Kafka

분산 이벤트 스트리밍 플랫폼. 실시간 데이터 파이프라인 구축의 핵심 기술.

개요

Apache Kafka는 고성능 분산 스트리밍 플랫폼으로, 실시간 데이터 파이프라인 및 스트리밍 애플리케이션 구축에 사용됩니다.

공식 사이트: https://kafka.apache.org/

핵심 개념

토픽 (Topic)

메시지를 저장하는 논리적 단위. 파티션으로 분산 저장됩니다. (원본: Kafka)

Producer

Kafka 토픽에 메시지를 발행하는 클라이언트. 실제 구현: 1. Kafka Producer

Consumer

Kafka 토픽에서 메시지를 구독하는 클라이언트. 실제 구현: 2. Kafka Consumer (Spark Structured Streaming)

Consumer Group

여러 Consumer가 협력하여 메시지를 처리하는 단위. (원본: Kafka)

프로젝트 활용

Nasdaq 실시간 파이프라인

Kafka를 활용한 실시간 주식 데이터 파이프라인:

로컬 개발 환경

Docker Compose를 활용한 로컬 Kafka 클러스터 구성:

관련 기술

주요 패턴

DLQ (Dead Letter Queue)

처리 실패 메시지를 별도 토픽으로 라우팅:

트러블슈팅

연결 오류

참고 자료

학습 노트:

프로젝트:

  • index - 실전 활용 사례

강의: