카프카 구성 요소 | 설명 |
---|---|
주키퍼 | 카프카의 메타데이터 관리 및 브로커의 health check를 담당 |
브로커 | 카프카 애플리케이션이 설치된 서버 또는 노드 |
프로듀서 | 카프카로 메시지를 보내는 역할을 하는 클라이언트 |
컨슈머 | 카프카에서 메시지를 꺼내오는 역할을 하는 클라이언트 |
토픽 | 카프카는 메시지 피드들을 토픽으로 구분하고, 각 토픽 이름은 카프카 내에서 고유함 |
파티션 | 병렬 처리 및 고성능을 얻기 위해 하나의 토픽을 여러개로 나눈 것 |
세그먼트 | 프로듀서가 전송한 실제 메시지가 브로커의 로컬 디스크에 저장되는 파일 |
메시지, 레코드 | 프로듀서가 브로커로 전송하거나 컨슈머가 읽어가는 데이터 조각 |
리플리케이션은 각 메시지들을 여러 개로 복제해 카프카 클러스터 내 브러크들에 분산 시키는 동작을 의미한다.
→ 하나의 브로커가 종료되더라도 안정성을 유지할 수 있음
리플리케이션 팩터를 높이는 건 리소스를 많이 사용하고 안정성을 챙기는 트레이드 오프 과정이다.