안녕하세요.
|
소프트웨어 엔지니어 Bear입니다.

thumbnail
[Kafka] 2023 KAFKA KRU 스터디 회고 및 Custom Kafka Connector 만들기

Special Thanks To. STEP 2. 스터디 회고 STEP 3. 커스텀 카프카 커넥터 개발하기 STEP 3.1 Kappa 아키텍처의 대두 STEP 3.1.1 람다(Lambda) 아키텍처의 단점 STEP 3.1.2 Kappa 아키텍처 훑어보기 STEP 3.2 Kafka Connect Overview STEP 3.3 커스텀 카프카 커넥터 구현 STEP 3.3.1 Extending Docker Image STEP 3.3.2 Gradle Plugin STEP 4. 실제 커넥트 컴포넌트 구현 STEP 4.1 설정 컴포넌트 STEP 4.2 커넥터 컴포넌트 STEP 4.3 태스크 컴포넌트 STEP 4.4 Running Task STEP 4.5 트러블슈팅 STEP 5. 결론 STEP 6. 추신 STEP 1. 개요 최근에 필자는 Kafka KRU - Kafka 한국 사용자 모임에서 주최했던 스터디에 참여하였다. 해당 스터디는 위의 책을 토대로 약 4주간 스터디가 진행되었으며, 이에 따른…

November 20, 2023
개발
인프라
[Kernel] 커널과 함께 알아보는 소켓과 TCP Deep Dive

STEP 1. 소켓이란? STEP 1.1 소켓의 종류 STEP 1.1.1 스트림 소켓 STEP 1.1.2 데이터그램 소켓 STEP 2. 커널 코드로 알아보는 TCP와 소켓 STEP 2.1 커널 코드로 알아보는 TCP Handshake 과정 STEP 2.1.1 3-Way Handshake STEP 2.1.2 4-Way HandShake STEP 2.2 커널 코드로 알아보는 TCP 메시지 송/수신 과정 STEP 2.2.1 TCP 송신 과정 STEP 2.2.2 TCP 수신 과정 STEP 3. TCP 사용 시 서비스에서 겪을 수 있는 문제들 STEP 3.1 TIME_WAIT 소켓 STEP 3.1.1 클라이언트 측면 STEP 3.1.2 서버 측면 STEP 3.1.3 TIME_WAIT 소켓의 존재 의의 STEP 3.3 TCP Keep-Alive STEP 3.3.1 TCP Keep-Alive 파라미터 STEP 3.3.2 좀비 커넥션 STEP 3.3.3 HTTP 지속커넥션 vs TCP Keep-…

October 12, 2023
개발
인프라
독서요약
[Kernel] 리눅스 메모리 관리 훑어보기

STEP 1. 서론 STEP 1.1 가상 주소 공간 STEP 1.2 task_struct와 mm_struct에 대한 이해 STEP 1.3 가상 메모리 영역(Virtual Memory Area, VMA) STEP 1.4 프로세스가 가상 주소 공간에 매핑되는 방식 STEP 1.4 페이지와 페이지 캐시 STEP 1.4.1 페이지 STEP 1.4.2 페이지 캐시 STEP 1.4.3 페이지 교체 정책 STEP 2. 본론 STEP 2.1 free 명령어 분석 STEP 2.1.1 buff와 cache 영역 STEP 2.1.2 avaliable 지표 STEP 2.2 /proc/meminfo 명령어 분석 STEP 2.3 slab 메모리 영역 STEP 2.3.1 vmalloc()과 kmalloc() STEP 2.3.2 Slab STEP 3. 결론 STEP 4. 추신 개요 이전 포스팅 [Kernel] 리눅스 스케줄링 매커니즘과 Load Average 이전 내용에서는 커널을 이해하기 위한 배경지식과 더…

September 04, 2023
개발
인프라
독서요약
[Kernel] 리눅스 스케줄링 매커니즘과 Load Average

STEP 1. 서론 STEP 1.1 병렬성과 동시성 STEP 1.2 Run Queue와 Wait Queue STEP 1.2.1 Run Queue STEP 1.2.2 Wait Queue STEP 1.3 리눅스 내에서 기본적인 스케줄링 STEP 1.3.1 프로세스 상태 변화 STEP 1.4 가상 주소 공간 STEP 1.5 MMIO(Memory Mapped I/O) STEP 2. 본론 STEP 2.1 VIRT & RES & SHR STEP 2.2 Memory Commit STEP 2.3 프로세스의 상태 2.4 프로세스의 우선순위 STEP 3. Load Averrage와 시스템 부하 STEP 3.1 CPU Bound vs I/O Bound 개요 최근에 커널 책을 같이 읽고 정리하는 스터디를 시작하였다. 이를 다루기 앞서, 난이도가 조금 있다보니 배경지식이 조금 필요한 것으로 보인다. 이에 따라, 중요한 개념 몇가지만 짚고 이와 연관된 내용으로 같이 얘기를 해보고자 한다. STEP 1. 서…

August 23, 2023
개발
인프라
독서요약