리눅스/kafka
kafka에서 message를 전송하는 과정
정지홍
2024. 9. 21. 17:46
만약에 Key값이 없는 메시지인 경우
- 프로듀서가 메시지를 전송할때 partitioner로 결정하는데, key값이 없는 경우에는 라운드 로빈,스티키 파티션과 같은 파티션 전략을 이용하여 보낸다.
만약에 Key값이 있는 메시지인 경우
- 특정한 key값을 가지는 메시지는 특정 파티션에만 전송된다.
- 즉, 카프카는 파티션 내부에서만 메시지 순서를 보장해주는것이다.

- kafka-console-producer
- 카프카에서 메시지를 생성 및 토픽에 메시지를 보내는것
- --bootstrap server localhost:9092
- 카프카 클러스터에 연결
- --topic NAME
- 메시지를 전송할 토픽 이름을 지정
- --property key.separator=:
- 메시지의 키와 벨류를 구분할 지정자를 명시한다.
- --property parse.key=true
- 키와 벨류를 분리하여 처리합니다.

- --property print.key=true
- 메시징의 키를 출력하게 한다.
- --property print.value=true
- 벨류를 출력하게 한다.
- --from-beginning
- 토픽의 메시지를 처음부터 읽게 설정한다.