partition
-
파티션 재할당(Reassignment) 로직 찍먹하기개발자 라이프/카프카 2022. 10. 24. 23:38
들어가며 이번엔 KafkaController 클래스에서 onPartitionReassignment 메서드 주석을 통해 파티션 재할당하는 로직을 알아봅니다. 대상 버전은 현재 가장 최신 버전인 3.3.0 버전입니다. 본문 중 Reassignment은 파티션 재할당 작업과 동일한 의미입니다. 파티션 재할당 로직 찍먹하기 onPartitionReassignment 메서드가 실행되는 시점 AlterPartitionReassignments API 가 호출되었을 때, Reassignment 정보를 저장하는 주키퍼 znode 경로에 znode가 생성되었을 때, 진행 중이던 reassignment 작업이 종료되었을 때, (파티션의 ISR znode 변경으로 감지됨) 진행 중이던 reassignment 작업의 대상 브로..
-
[Kafka 101] 카프카 메시지와 토픽과 파티션 (Kafka Message, Topic and Partition)개발자 라이프/카프카 2020. 2. 25. 16:03
들어가며 카프카 브로커는 프로듀서로부터 메시지를 전달받고, 다시 이를 컨슈머로 전달하는 역할을 담당합니다. 이번 글은 카프카를 통해 흘러가는 메시지에 대해 알아보고, 나아가 카프카의 요소인 토픽과 파티션에 대해 개념적으로 살펴봅니다. 카프카의 메시지 카프카의 메시지는 Key(키)와 Value(값)로 구성됩니다. 먼저, 메시지의 키는 해당 메시지가 카프카 브로커 내부에 저장될 때, 저장되는 위치와 관련된 요소입니다. 프로듀서가 메시지를 브로커로 전달할 때, 프로듀서 내부의 파티셔너(Partitioner)가 저장 위치를 결정하는데, 이때 키의 값을 이용하여 연산하고 그 결과에 따라 저장되는 위치를 결정합니다. 메시지의 값은 메시지가 전달하고자 하는 내용물을 의미합니다. 값은 단순한 문자열이 될 수도 있고, ..