병렬 처리량의 상한선 = Partition 수ㅋ

Broker
메세지를 저장하는 Kafka 서버
Producer 가 보낸 메세지는 Topic, Partition 형태를 거쳐 Broker 내부에 저장 → Kafka 메세지 저장소
Broker 의 역할
Producer 가 보낸 메세지 저장
Consumer 가 메세지를 읽도록 제공
Topic, Partition 의 파일 구조 관리
브로커 내부에 Partition 디렉토리가 만들어지고
그 내부에 메세지를 log 파일로 관리함
Consumer Group
병렬 처리를 위한 Consumer 구조
메세지가 많아지면 1개로는 부족하므로 여러 Consumer 가 협업 처리
여러 Partition 을 여러 Consumer 나누어 제공 → 병렬 처리
하나의 Partition은 Consumer Group 내 하나의 Consumer에게만 할당 → Kafka 규칙
Consumer가 Partition보다 많아도 남는 Consumer는 대기 상태
→ Consumer 수가 많아져도 Partition 수가 병렬 처리의 상한선
💡
각각의 Consumer Group 이 Partition 을 독립적으로 참조하며 Offset 을 갖고 각각의 담당 역할을 수행함
같은 파티션의 메세지를 읽어도 다른 기능을 수행하며 진행
주문의 데이터를 후에 필요하다가 따로 요청해서 받을 필요가 없이 Producer 가 Orders 에 대한 데이터를 토픽에 기록했으니
주문 데이터를 Kafka 에서 가져가 사용할 수 있어 협업에도 유리
Share article