아파치 카프카 애플리케이션 프로그래밍 with 자바 pdf 다운로드를 무료로 제공합니다 아파치 카프카란 무엇일까? 카프카 애플리케이션은 어떻게 만들까? 데이터 파이프라인을 만들기 위해 어떤 카프카 라이브러리를 사용해야 할까? 클라우드 기반 아파치 카프카는 어떤 기능을 가지고 있을까?
관련 교재 pdf 모음
책 소개
이 책은 아파치 카프카의 기본적인 개념과 상용 프로젝트에 카프카를 사용하는 방안, 그리고 코드를 기반으로 연동 애플리케이션을 개발하는 과정을 소개한다. 또한, 「실전 프로젝트」에서 실무에 많이 사용되는 아키텍처와 유사한 구조로 실습을 진행하며 상용 환경에서 어떻게 데이터 파이프라인을 구축하는지 설명한다. 이 책을 통해 카프카와 연관된 플랫폼들과의 관계를 전체적으로 이해하는 것을 넘어 카프카를 업무에 성공적으로 도입하고 안정적으로 운영할 수 있을 것이다. 이 책은 아파치 카프카로 새로운 개발 트렌드를 준비하는 분들을 위해 집대성한 아파치 카프카 최종 솔루션이다. 국내 서적 중 최초로 카프카의 핵심 기능인 ‘미러메이커2(MirrorMaker2)’에 대한 설명과 ‘스프링 카프카’, ‘클라우드 카프카’에 대한 내용을 다루기 때문에 아파치 카프카 도입을 앞둔 개발자뿐만 아니라, 이미 활용하고 있는 개발자에게도 추가적인 역량 향상의 기회를 제공한다. 또한, 실무 아키텍처와 유사한 구조의 실전 프로젝트와 38개의 예제 소스코드를 통해 실제 업무에서 사용하는 기법과 코드를 익힐 수 있다.
아파치 카프카 애플리케이션 자바
1.1 카프카의 탄생
1.2 빅데이터 파이프라인에서 카프카의 역할
1.3 데이터 레이크 아키텍처와 카프카의 미래
1.4 정리
[2장] 카프카 빠르게 시작해보기
2.1 실습용 카프카 브로커 설치
2.1.1 AWS EC2 인스턴스 발급 및 보안 설정
2.1.2 인스턴스에 접속하기
______ssh 명령어로 접속하기
______putty로 접속하기
2.1.3 인스턴스에 자바 설치
2.1.4 주키퍼·카프카 브로커 실행
______카프카 브로커 힙 메모리 설정
______카프카 브로커 실행 옵션 설정
______주키퍼 실행
______카프카 브로커 실행 및 로그 확인
2.1.5 로컬 컴퓨터에서 카프카와 통신 확인
______테스트 편의를 위한 hosts 설정
2.2 카프카 커맨드 라인 툴
2.2.1 kafka-topics.sh
______토픽 생성
______토픽 리스트 조회
______토픽 상세 조회
______토픽 옵션 수정
2.2.2 kafka-console-producer.sh
2.2.3 kafka-console-consumer.sh
2.2.4 kafka-consumer-groups.sh
2.2.5 kafka-verifiable-producer, consumer.sh
2.2.6 kafka-delete-records.sh
2.3 정리
[3장] 카프카 기본 개념 설명
3.1 카프카 브로커 · 클러스터 · 주키퍼
______데이터 저장, 전송
______데이터 복제, 싱크
______컨트롤러(controller)
______데이터 삭제
______컨슈머 오프셋 저장
______코디네이터(coordinator)
3.2 토픽과 파티션
______토픽 이름 제약 조건
______의미 있는 토픽 이름 작명 방법
3.3_레코드
3.4 카프카 클라이언트
3.4.1 프로듀서 API
______카프카 프로듀서 프로젝트 생성
______프로듀서 중요 개념
______프로듀서 주요 옵션
______메시지 키를 가진 데이터를 전송하는 프로듀서
______커스텀 파티셔너를 가지는 프로듀서
______브로커 정상 전송 여부를 확인하는 프로듀서
3.4.2 컨슈머 API
______카프카 컨슈머 프로젝트 생성
______컨슈머 중요 개념
______컨슈머 주요 옵션
______동기 오프셋 커밋
______비동기 오프셋 커밋
______리밸런스 리스너를 가진 컨슈머
______파티션 할당 컨슈머
______컨슈머에 할당된 파티션 확인 방법
______컨슈머의 안전한 종료
3.4.3 어드민 API
______브로커 정보 조회
______토픽 정보 조회
3.5 카프카 스트림즈
3.5.1 스트림즈DSL
______KStream
______KTable
______GlobalKTable
______스트림즈DSL 주요 옵션
______스트림즈DSL – stream( ), to( )
______스트림즈DSL – filter( )
______스트림즈DSL – KTable과 KStream을 join( )
______스트림즈DSL – GlobalKTable과 KStream을 join( )
3.5.2 프로세서 API
3.6 카프카 커넥트
______커넥트를 실행하는 방법
______단일 모드 커넥트
______분산 모드 커넥트
3.6.1 소스 커넥터
______파일 소스 커넥터 구현
3.6.2 싱크 커넥터
______파일 싱크 커넥터 구현
3.7 카프카 미러메이커2
3.7.1 미러메이커2를 활용한 지리적 복제(Geo-Replication)
3.8 정리
[4장] 카프카 상세 개념 설명
4.1 토픽과 파티션
4.1.1 적정 파티션 개수
4.1.2 토픽 정리 정책(cleanup.policy)
______토픽 삭제 정책(delete policy)
______토픽 압축 정책(compact policy)
4.1.3 ISR(In-Sync-Replicas)
______unclean.leader.election.enable
4.2 카프카 프로듀서
4.2.1 acks 옵션
______min.insync.replicas
4.2.2 멱등성 프로듀서(idempotence producer)
4.2.3 트랜잭션 프로듀서(transaction producer)
4.3 카프카 컨슈머
4.3.1 멀티 스레드 컨슈머
______카프카 컨슈머 멀티 워커 스레드 전략
______카프카 컨슈머 멀티 스레드 전략
4.3.2 컨슈머 랙
______카프카 명령어를 사용하여 컨슈머 랙 조회
______컨슈머 metrics( ) 메서드를 사용하여 컨슈머 랙 조회
______외부 모니터링 툴을 사용하여 컨슈머 랙 조회
4.3.2.1 카프카 버로우
______컨슈머 랙 모니터링 아키텍처
4.3.3 컨슈머 배포 프로세스
______중단 배포
______무중단 배포
4.4 스프링 카프카
4.4.1 스프링 카프카 프로듀서
______기본 카프카 템플릿
______커스텀 카프카 템플릿
4.4.2 스프링 카프카 컨슈머
______기본 리스너 컨테이너
______커스텀 리스너 컨테이너
4.5 정리
[5장] 카프카 실전 프로젝트
5.1 웹 페이지 이벤트 적재 파이프라인 생성
5.1.1 요구 사항
5.1.2 정책 및 기능 정의
5.1.3 기능 구현
5.1.4 기능 테스트
5.1.5 상용 인프라 아키텍처
5.2 서버 지표 수집 파이프라인 생성과 카프카 스트림즈 활용
5.2.1 요구 사항
5.2.2 정책 및 기능 정의
5.2.3 기능 구현
5.2.4 기능 테스트
5.2.5 상용 인프라 아키텍처
5.3 미러메이커2를 사용한 토픽 미러링
5.3.1 요구 사항
5.3.2 기능 정의
5.3.3 기능 구현
5.3.4 기능 테스트
5.3.5 상용 인프라 아키텍처
5.4 정리
[6장] 클라우드 카프카 서비스
6.1 컨플루언트 클라우드
6.1.1 컨플루언트 클라우드 활용
6.1.1.1 클러스터 생성
6.1.1.2 토픽 생성
6.1.1.3 API키 발급
6.1.1.4 프로듀서 애플리케이션 연동
6.1.1.5 컨슈머 애플리케이션 연동
6.1.1.6 커넥터 S3 적재 파이프라인
6.1.2 컨플루언트 카프카 정리
6.2 AWS MSK
6.2.1 MSK 활용
6.2.1.1 클러스터 생성
6.2.1.2 MSK 클러스터 연동 인스턴스 생성
6.2.1.3 토픽 생성
6.2.1.4 프로메테우스 설치 및 연동
6.2.1.5 그라파나 설치 및 연동
6.2.1.6 콘솔 프로듀서, 컨슈머 연동
6.2.2 AWS MSK 정리
6.3 정리
[7장] 부록
7.1 카프카 소스코드 다운로드 및 분석
7.2 로컬 테스트용 카프카 도커 이미지 실행