Kafka 0.8.1 및 Kafka python-0.9.0을 사용하고 있습니다. 제 설정에서 카프카 브로커를 2 대 설치했습니다. 카프카 소비자를 실행할 때 대기열에서 메시지를 검색하고 두 브로커 모두에 대한 오프셋을 추적하는 것을 볼 수 있습니다. 모든 것이 훌륭하게 작동합니다!Kafka (python) 사용자를 다시 시작하면 대기열에있는 모든 메시지가 다시 사용됩니다.
제 문제는 소비자를 다시 시작할 때 처음부터 메시지를 소비하기 시작한다는 것입니다. 내가 예상했던 것은 재시동 할 때 소비자가 죽기 전에 중단 한 곳에서 메시지를 소비하기 시작한다는 것입니다.
Redis에서 메시지 오프셋을 추적 한 다음 큐에서 메시지를 읽기 전에 consumer.seek를 호출하여 이전에 보지 못했던 메시지 만 수신하도록했습니다. 이 솔루션을 배포하기 전에이 방법이 효과가 있었지만, 저는 모두에게 확인하고 싶었습니다 ... 아마도 카프카 (Kafka) 또는 파이썬 - 카프카 (Kafka) 클라이언트에 대한 오해가 있습니다. 소비자가 읽은 곳을 다시 시작할 수있는 것처럼 보이는 것은 꽤 기본적인 기능입니다.
감사합니다.