NAVER D2
d2.naver.com
Kafka 를 사용할 때 메시지 처리량을 늘릴 수 있는 가장 쉬운 방법 중 하나는 파티션을 증가시키고 이에 맞게 컨슈머 스레드 수를 조절하는 것입니다.
다만 이 방법에는 다음과 같은 주의사항이 있습니다.
Kafka 스펙상 파티션 수는 한번 늘어나면 줄일 수 없습니다.
따라서 일시적인 트래픽 증가일 경우 불필요한 파티션을 유지해야하는 결과를 초래할 수 있기에 파티션 수 증가는 신중하게 결정해야합니다.
그리고 파티션을 늘리게 될 경우 기존에 보낸 메세지와 다른 파티션으로 메세지가 유입될 수 있어 순서가 중요한 메세지일 경우 영향을 받을 수 있습니다.
Confluent 에서는 이러한 이슈를 해결하기 위해 Kafka 의 병렬처리 단위를 파티션 단위가 아닌 메세지 단위로 처리할 수 있게끔 Parallel Consumer 를 만들었습니다.
Parallel Consumer 는 이름에서 이미 눈치 채셨겠지만,
단일 파티션에 여러 컨슈머 스레드를 사용하여 파티션을 늘리지 않고 동시 처리량을 증가시키기 위해 만들어진 라이브러리 입니다.
이번에 Naver 기술 개발 블로그인 d2 에서 Parallel Consumer 에 대한 내용을 자세히 설명해주는 글을 올려주셨는데요,
관심있으신 분들께서는 한번 읽어보시면 좋겠습니다.
📚 원문
https://d2.naver.com/helloworld/7181840
다음 내용이 궁금하다면?
이미 회원이신가요?
2023년 10월 27일 오전 12:40
태초에 모든 동물은 바다에서 살았다. 바다가 동물이 살기 좋은 환경이었던 것이다. 그런데, 동물 사이에 먹이 사슬이 형성되었고, 힘이 없는 동물들은 척박한 곳으로 밀려났다. 그곳이 바로 강이다. 처음에는 강에서 살기 힘들었지만, 성공적으로 적응하는 동물들이 생겨났고, 그래서 강에도 생태계가 형성되었다.
... 더 보기이 친구도 만만치않게 독특한 편
... 더 보기1. 누군가가 화려한 단어나 두루뭉술한 개념을 많이 사용한다면 아마 자신이 무슨 말을 하는지도 모를 것이다.
첫
... 더 보기