Web/Kafka
[Kafka] 카프카 기초 - 1
MarrRang
2021. 1. 27. 21:17
참조 블로그 : server-engineer.tistory.com/681
이 글은 위의 참고 영상과 그 밑의 정리해놓은 다른 블로그를 참조하며 정리한 글입니다.
제 글보다는 위의 글이 더 깔끔하다고 생각합니다... ㅎㅎ
0. 시작하며
이 글을 시작으로 꾸준히 업로드 될 카프카 시리즈 게시물은 제가 직접 카프카를 사용해 보면서 이정도만 알면 흐름정도는 알고 사용할 수 있겠구나 하는 정도로만 설명을 하고 정리를 할 예정입니다.
게시물을 끊어가는 기준은 부족한 제가 공부할 때 이해한 큰 단위 기준으로 나누게 되었습니다.
가볍게 짧은 시간에 보실 예정이라면 추천드리지만 깊게 알고싶으신 분들은 추가 검색을 권장드립니다. :)
1. Kafka 용어 정리
- Broker : 카프카 서버의 단위
- Topic : 사용자가 데이터를 넣는 주제, 데이터 분리의 단위
- Partition : Topic 안에서 레코드를 담고있을 컨테이너들 중 하나
- Offset : 각 레코드에 할당된 고유 번호
- Consumer : 레코드를 소비하는 애플리케이션
- Consumer Group : 컨슈머 묶음
- Consumer offset : 컨슈머가 소비한 레코드의 번호
- Producer : 레코드를 생산해서 보내는 애플리케이션
- Replication : 한 Partition을 데이터 보존을 위해 동일하게 복사한 개체
2. Broker
- 카프카 애플리케이션 서버 1대를 칭하는 용어
- 여러 대의 Broker로 클러스터를 구성할 수 있다.
- zookeeper를 통해 관리된다
- zookeeper : 메타데이터 (Broker id, Controller id 등) 저장
- 브로커중 1개는 Controller의 역할을 수행한다.
- controller : 각 브로커의 파티션, Replica를 관리하고 정상 동작하는지 모니터링
3. Topic & Partition
- 메시지 분류 단위
- 파티션마다 고유한 오프셋을 가진다.
- 메시지 처리순서는 파티션 별로 유지 관리됨
4. Producer & Consumer
- 프로듀서(Producer) - 레코드를 생성해서 Broker로 전송
- 컨슈머(Consumer) - 레코드를 Broker로 부터 가져감
- 전송된 레코드는 파티션에 신규 오프셋과 함께 기록됨
반응형