Kafka 컨슈머 그룹과 파티션 전략을 잘못 설계하면, 아무리 강력한 서버를 써도 Kafka의 진짜 성능을 절반도 끌어내지 못합니다. “메시지가 쌓이는데 소비가 따라가지 못한다”, “컨슈머를 늘렸는데 처리량이 그대로다”라는 상황이 바로 파티션 설계 실패의 전형적인 증상입니다. Kafka의 병렬 처리 핵심 단위는 파티션이며, 파티션과 컨슈머 그룹의 관계를 정확히 이해하고 설계해야 비로소 처리량을 선형적으로 끌어올릴 수 있습니다. 이 글에서는 기초 […]
Spring Boot Kafka 연동은 백엔드 개발자라면 한 번은 반드시 거쳐야 할 실습 과제입니다. 마이크로서비스 아키텍처가 보편화되면서 서비스 간 비동기 통신 수단으로 Kafka를 도입하는 사례가 폭발적으로 늘고 있기 때문입니다. 처음 연동을 시도할 때 설정 파일 한 줄 차이로 연결이 안 되거나, Producer는 보내는데 Consumer가 받지 못하는 상황에 막히기 쉽습니다. 이 글에서는 로컬 환경 구성부터 실제 메시지 […]
백엔드 시스템을 설계하다 보면 반드시 마주치는 질문이 있습니다. “Kafka와 RabbitMQ 중 무엇을 써야 할까?” 둘 다 메시지 브로커라고 불리지만, 내부 동작 방식과 강점이 완전히 다릅니다. 잘못 선택하면 성능 병목이나 운영 부담으로 이어지므로, 구조적 차이를 제대로 이해하고 결정해야 합니다. 이 글에서는 두 기술의 핵심 차이를 개념부터 실전 선택 기준까지 단계별로 정리합니다. 목차 1. 메시지 큐란 무엇인가 […]