Producer
- 카프카 토픽 내 파티션으로 데이터를 전송하는 역할을 수행한다.
- 프로듀서는 토픽 내 어떤 파티션으로 데이터가 전송될 지를 미리 알고 있다.
- 장애가 발생했을 경우 자동적으로 대응한다. (추후 학습)

Message key
프로듀서는 생성하는 카프카 메시지에 메시지 키를 설정 할 수 있다. (optional)
메시지 키가 존재하지 않는 경우(null인 경우) 라운드 로빈 방식으로 파티션에 데이터를 전달한다.
키가 존재하는 경우 같은 키를 가진 데이터들은 같은 파티션으로의 전달을 보장받는다. (hashing)
Kafka Message
카프카 메시지는 아래와 같은 정보들로 구성된다.

Kafka Message Serializer
프로듀서로부터 입력값으로 직렬화 된 바이트만을 받고 컨슈머에게 출력값으로 바이트를 전송한다.
메시지를 구성할 때는 바이트가 아니다. 따라서 메시지 직렬화가 필요하다.
직렬화를 통해 데이터를 바이트로 변환해준다.
카프카에서 데이터 직렬화는 오로지 key, value 에만 적용된다.

Kafka Message Key Hashing
카프카 파티셔너라는 코드 로직이 어떤 파티션으로 메시지를 보낼지를 결정한다.
참고)
'Kafka' 카테고리의 다른 글
[Kafka] 'Topic Replication'에 대해 알아보자 (0) | 2024.03.11 |
---|---|
[Kafka] 'Broker'에 대해 알아보자 (0) | 2024.03.06 |
[Kafka] 'Consumer'에 대해 알아보자 (0) | 2024.03.04 |
[Kafka] 'Topic과 Partition'에 대해 알아보자 (0) | 2024.02.28 |