전체 글 491

[linux] libc 와 glibc 와 libstdc++ 와 gcc의 관계 정리

개념 정리 libc 최초의 libc, 이것이 원래의 고대 표준 라이브러리 구현체입니다. 현재는 libc는 "표준 C 라이브러리"를 말하는 대 명사처럼 사용 됩니다. glibc glibc는 GNU에서 만든 libc 입니다. glibc는 리눅스 시스템에서 가장 저수준의 API이며 거의 모든 runtime library가 glibc에 의존합니다. 예를 들면 c코드에서 fopen 함수를 사용하면 시스템에서 sys_open이 트리거 되고 중간 처리를 해주는 것이 glibc입니다. glibc 자체는 시스템 호출을 캡슐화하는 것 말고도 문자열, malloc, linuxthread, locale, signal등과 같은 상위 레벨 응용 프로그램에 필요한 기능을 제공합니다 libc++ libc++는 Clang 프로젝트에서..

[kubernetes] cheat sheet

특정 node 스케쥴링 막기 - kubectl cordon은 지정된 노드에 더이상 포드들이 스케쥴링되서 실행되지 않도록 합니다 1) 설정 #kubectl cordon "node이름" # kubectl get nodes NAME STATUS ROLES AGE VERSION master Ready,SchedulingDisabled control-plane 21h v1.25.2 worker Ready 5h49m v1.25.3 2) 해제 #kubectl uncordon "node이름" 특정 node의 pod를 다르 node로 옮기기 #kubectl drain docker-for-desktop --ignore-daemonsets=true --ignore-daemonsets=true 은 daemonsets이 있어도..

Cloud/k8s 2022.10.14

[AWS-DOP-CO1] CodeCommit

정의 AWS상에서의 git repository 입니다. 특징 1. private git repositories 2. size 제한 없음 3. fully managed, highly available 4. code는 AWS 계정에 종속 적입니다. 5. CodeBuild / jenkin와 연동 할 수 있다. Commit에서 할 수 있는 것들 1. codecommit push 계정 생성 IAM -> user -> 계정 -> Security Credentials -> HTTPS Git credentials for AWS CodeCommit 생성 2. codecommit에 push 하는 방법 HTTPS Git credentials for AWS CodeCommit 생성한 ID/PW를 사용 합니다. 3. merge..

[리눅스] thread 및 process에 CPU Core 할당 하기

사용시기 1. 실행하는 프로세스와 관련된 인터럽트가 특정 CPU 코어에서만 트리거됨(IRQ Affinity라고 하죠.) 2. 프로세스가 여러 CPU 코어에 옮겨 다니면서 실행할 때 요구되는 오버헤드(마이그레이션)을 최소화하자 - 고성능을 내기 위한 프로그램을 구현 할 때 종종 사용 됩니다. 필수 define #define _GNU_SOURCE 헤더 #include // process에 CPU를 할당 할때 사용 #include // thread에 CPU를 할당 할때 사용 process에 CPU 할당 void set_cpu(int core_id) { const pid_t pid = getpid(); // CPU 정보 초기화 cpu_set_t cpuset; CPU_ZERO(&cpuset); // CPU 정보에..

[기술 정리] gRPC

개요 gRPC가 무엇인지 알아보겠습니다. 원리 구조 사용법 참조 https://medium.com/naver-cloud-platform/nbp-%EA%B8%B0%EC%88%A0-%EA%B2%BD%ED%97%98-%EC%8B%9C%EB%8C%80%EC%9D%98-%ED%9D%90%EB%A6%84-grpc-%EA%B9%8A%EA%B2%8C-%ED%8C%8C%EA%B3%A0%EB%93%A4%EA%B8%B0-1-39e97cb3460 [NBP 기술&경험] 시대의 흐름, gRPC 깊게 파고들기 #1 안녕하세요, 네이버 클라우드 플랫폼입니다. medium.com https://medium.com/naver-cloud-platform/nbp-%EA%B8%B0%EC%88%A0-%EA%B2%BD%ED%97%98-%EC%8..

카테고리 없음 2022.09.16

[프로그래머스] 소수 찾기Level 2

문제 https://school.programmers.co.kr/learn/courses/30/lessons/42839 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 핵심 1. 완전 탐색 알고리즘 기법 중 하나인 bitmask 기법을 알아야한다. 2. 순열을 구하는 알고리즘을 알아야한다. - C++에는 순열을 구하는 next_permutation 함수가 존재한다. 4. 소수 판별 법을 알아야 한다. 3. 문자열 연산은 느리다. 숫자 연산을 최대한 한다. 코드 #include #include #include #include #include #include ..

[web server] 1. golang web framework 설치

개요 golang을 이용하여 backend web server를 구축해 보겠습니다. 그리고 web server를 k8s에 올리는 방법을 알아보겠습니다. 구축 스펙 항목 버전 OS ubuntu 20.04 golang go 1.18.5 web framework 1. 정보 golang으로 구현된 webframework인 gin gonic 을 사용해서 설치해보겠습니다. 그외 다른 golang webframework 확인 방법 https://github.com/mingrammer/go-web-framework-stars GitHub - mingrammer/go-web-framework-stars: Web frameworks for Go, most starred on GitHub :star: Web framewor..