이미 소장하고 있다면 판매해 보세요.
|
CHAPTER 1 카프카 훑어보기 __1
메시지 발행과 구독하기 ...... 2 카프카 살펴보기 ...... 4 카프카를 사용하는 이유 ...... 10 데이터 생태계 ...... 12 카프카의 기원 ...... 15 카프카 시작하기 ...... 17 CHAPTER 2 카프카 설치와 구성하기 __ 19 제일 먼저 할 일 ...... 19 카프카 브로커 설치하기 ...... 23 브로커 구성 ...... 25 하드웨어 선택 ...... 31 클라우드에서 카프카 사용하기 ...... 33 카프카 클러스터 ...... 34 실제 업무 사용 시 고려사항 ...... 40 요약 ...... 43 CHAPTER 3 카프카 프로듀서: 카프카에 메시지 쓰기 __ 45 프로듀서 개요 ...... 46 카프카 프로듀서 구성하기 ...... 48 카프카에 메시지 전송하기 ...... 51 프로듀서 구성하기 ...... 54 직렬처리기 ...... 58 파티션 ...... 66 구버전의 프로듀서 API들 ...... 69 요약 ...... 69 CHAPTER 4 카프카 컨슈머: 카프카에서 데이터 읽기 __ 71 카프카 컨슈머의 중요 개념 ...... 71 카프카 컨슈머 생성하기 ...... 77 토픽 구독하기 ...... 78 폴링 루프 ...... 79 컨슈머 구성하기 ...... 81 커밋과 오프셋 ...... 85 리밸런싱 리스너 ...... 92 특정 오프셋을 사용해서 레코드 소비하기 ...... 95 어떻게 폴링 루프를 벗어나야 할까? ...... 98 역직렬처리기 ...... 100 독자 실행 컨슈머: 그룹 없이 하나의 컨슈머만 사용하는 이유와 방법 ...... 104 구버전의 컨슈머 API들 ...... 105 요약 ...... 106 CHAPTER 5 카프카 내부 메커니즘 __ 107 클러스터 멤버십 ...... 107 컨트롤러 ...... 109 복제 ...... 110 요청 처리 ...... 112 스토리지 ...... 120 요약 ...... 128 CHAPTER 6 신뢰성 있는 데이터 전달 __ 129 신뢰성 보장 ...... 130 복제 ...... 131 브로커 구성 ...... 132 신뢰성 있는 시스템에서 프로듀서 사용하기 ...... 137 신뢰성 있는 시스템에서 컨슈머 사용하기 ...... 141 시스템 신뢰성 검사하기 ...... 146 요약 ...... 149 CHAPTER 7 데이터 파이프라인 구축하기 __ 151 데이터 파이프라인 구축 시 고려사항 ...... 152 카프카 커넥트 vs. 프로듀서/컨슈머 ...... 158 카프카 커넥트 ...... 159 카프카 커넥트의 대안 ...... 175 요약 ...... 176 CHAPTER 8 크로스 클러스터 데이터 미러링 __ 179 크로스 클러스터 미러링의 이용 사례 ...... 180 다중 클러스터 아키텍처 ...... 181 아파치 카프카의 미러메이커 ...... 194 다른 크로스 클러스터 미러링 솔루션 ...... 204 요약 ...... 207 CHAPTER 9 카프카 관리하기 __ 209 토픽 작업 ...... 209 컨슈머 그룹 ...... 215 동적 구성 변경 ...... 220 파티션 관리 ...... 224 메시지 읽기와 쓰기 도구 ...... 233 클라이언트 ACL ...... 240 안전하지 않은 작업 ...... 요약 ...... 243 CHAPTER 10 카프카 모니터링 __ 245 메트릭 개요 ...... 245 카프카 브로커 메트릭 ...... 248 클라이언트 모니터링 ...... 270 지연 모니터링 ...... 278 End-to-End 모니터링 ...... 279 요약 ...... 280 CHAPTER 11 스트림 프로세싱 __ 281 스트림 프로세싱이란? ...... 282 스트림 프로세싱 개념 ...... 285 스트림 프로세싱 디자인 패턴 ...... 291 카프카 스트림즈 사용 예 ...... 300 카프카 스트림즈: 아키텍처 오버뷰 ...... 309 스트림 프로세싱 이용 사례 ...... 313 스트림 프로세싱 프레임워크 선택하기 ...... 315 요약 ...... 316 APPENDIX 다른 운영체제에 카프카 설치하기 __ 317 윈도우 시스템에 설치하기 ...... 317 맥OS에 설치하기 ...... 322 |
Neha Narkhede
Gwen Shapira
그웬 샤피라의 다른 상품
Todd Palino
토드 팔리노의 다른 상품
심재철의 다른 상품
|
데이터를 처리하기 위해 구축한 환경에는 많은 애플리케이션이 있다. 그리고 데이터를 생성하는 애플리케이션에 맞춰 입력 형식이 정의되며, 메트릭, 리포트 등으로 출력 형태가 정의된다. 또한, 특정 컴포넌트를 사용해서 시스템의 데이터를 읽은 후 다른 소스에서 받은 데이터를 사용해서 변환시킨다. 그다음에 어디서든 사용될 수 있도록 최종 데이터를 데이터 기반 구조에 전달한다. 이런 작업은 고유한 콘텐츠와 크기, 용도를 갖는 다양한 유형의 데이터로 처리된다. 이것이 메시지 데이터의 처리 흐름이다. --- p.12
브로커가 커밋 요청에 응답할 때까지 애플리케이션이 일시 중지된다는 것이 수동 커밋의 한 가지 단점이다. 이로 인해 애플리케이션의 처리량을 제한하게 된다. 물론 커밋을 자주 하지 않으면 처리량이 증가될 수 있다. 그러나 리밸런싱으로 인해 생기는 중복 처리 레코드의 수가 증가한다. --- p.88 이처럼 역할을 분리하는 것이 커넥트 API 사용 시의 장점이며, 이것이 종래의 컨슈머/프로듀서 API와는 다른 점이다. 카프카로부터 데이터를 읽어서 데이터베이스에 추가하는 코드를 작성하려면 대략 하루나 이틀 정도 걸리지만, 구성, 에러, REST API, 모니터링, 배포, 규모 확장/축소, 장애 등을 모두 처리하려면 수개월은 족히 소요된다는 것을 경험 있는 개발자라면 알 수 있을 것이다. 그러나 커넥터를 사용해서 데이터 복사를 구현할 때는 그런 복잡한 작업을 해주는 작업 프로세스에 우리 커넥터를 연결하면 된다. --- p.173 한 브로커의 파티션 총계는 자주 변경되지 않는다. 브로커에게 할당된 파티션의 전체 개수이기 때문이다. 이것은 브로커가 각 파티션의 리더나 팔로어 중 어느 것이든 관계없이 그 브로커가 갖는 모든 리플리카 파티션을 포함한다. 토픽 자동 생성이 활성화된 클러스터에서는 이 메트릭을 모니터링하는 것이 더 중요하다. 왜냐하면 클러스터를 실행하는 사람의 제어 한계를 벗어나서 토픽이 생성될 수 있기 때문이다. 이 메트릭의 상세 내역은 표 10-8과 같다. --- p.259 맥OS는 다윈(Darwin)을 기반으로 한다(다윈은 FreeBSD 등의 유닉스에서 파생된 오픈 소스 OS(운영체제)이다). 따라서 아파치 카프카와 같이 유닉스에 맞게 설계된 애플리케이션을 그리 어렵지 않게 설치할 수 있다. 설치 방법으로는 두 가지가 있다 Homebrew(홈브루)와 같은 패키지 매니저를 사용해서 간단하게 설치하는 방법과 자바 및 카프카를 직접 설치하는 방법이다. --- p.322 |
|
카프카를 개발한 컨플루언트와 링크드인의 엔지니어들이 직접 저술한 카프카 구축과 운영 핵심 실무서!
모든 기업의 애플리케이션은 데이터를 생성하며, 데이터는 로그 메시지, 메트릭, 사용자 액티비티 등 여러 가지가 있다. 그리고 이런 모든 데이터를 이동시키는 방법이 데이터 자체만큼이나 중요하다. 만약 여러분이 실시간 데이터 전달을 처리하는 스트리밍 플랫폼인 아파치 카프카를 처음 접하는 개발자라면, 이 책이 여러분을 초보자에서 전문가로 이끌어 줄 것이다. 이 책은 아파치 카프카를 개발한 컨플루언트와 링크드인의 엔지니어들이 저술하였으며, 아파치 카프카를 실제 업무에 사용하는 데 필요한 모든 핵심 사항을 알려준다. 따라서 이 책의 내용을 잘 숙지하며 학습하다 보면, 어느덧 데이터 파이프라인/스트리밍 분야의 전문가가 되어 있는 자신을 발견할 것이다. 이 책의 주요 내용 ■ 데이터 파이프라인 시스템 및 카프카의 핵심 개념을 이해하고, 카프카를 설치하고 구성하는 방법을 배운다. ■ 카프카 프로듀서와 컨슈머를 생성하고 구성하는 데 필요한 핵심 개념과 방법을 배운다. ■ 카프카의 원활한 실무 사용에 도움이 될 핵심적인 내부 메커니즘을 이해한다. ■ 카프카로 데이터 파이프라인/통합 시스템을 구축하는 데 필요한 핵심 개념과 카프카 커넥트 의 사용법을 배운다. ■ 카프카로 데이터 미러링을 구현하는 방법을 배운다. ■ 카프카 시스템을 운영 및 관리하는 방법을 배운다. ■ 카프카 시스템의 메트릭을 이해하고 모니터링하는 방법을 배운다. ■ 스트림 프로세싱 시스템의 핵심 개념과 카프카 스트림을 사용해서 구현하는 방법을 배운다. |