Kafka 프로듀서와 컨슈머는 발행과 구독이라는 두 축으로 움직인다
Kafka를 처음 붙일 때 가장 헷갈리는 지점은 대개 컨슈머 쪽이다. “서버를 여러 대로 늘렸는데 왜 같은 메시지를 두 번 처리하지?” 또는 반대로 “왜 한 서버만 메시지를 가져가고 나머지는 노는지?” 같은 질문이 그렇다. 답은 거의 항상 컨슈머 그룹 설정에 있다. Kafka에서…
Kafka를 처음 붙일 때 가장 헷갈리는 지점은 대개 컨슈머 쪽이다. “서버를 여러 대로 늘렸는데 왜 같은 메시지를 두 번 처리하지?” 또는 반대로 “왜 한 서버만 메시지를 가져가고 나머지는 노는지?” 같은 질문이 그렇다. 답은 거의 항상 컨슈머 그룹 설정에 있다. Kafka에서…
카프카를 처음 배울 때 가장 많이 헷갈리는 지점은 “토픽에 메시지를 넣었는데 왜 순서가 뒤죽박죽으로 나오지?”다. 답은 카프카의 저장 구조에 있다. 카프카 클러스터는 브로커라는 서버 위에, 토픽이라는 논리 단위를 두고, 그 안에 파티션이라는 물리 단위로 메시지를 나눠 저장한다. 이 세 겹을…
두 서버가 직접 데이터를 주고받게 만들면 언젠가 문제가 생긴다. 받는 쪽 서버가 잠깐 죽으면 보낸 요청은 그대로 사라지고, 응답을 기다리는 동안 보낸 쪽 서버의 성능도 같이 떨어진다. 아파치 카프카(Apache Kafka)는 이 문제를 “중간에 메시지를 대신 보관해 주는 저장소”를 두는 방식으로…