0

我讓我的動物園管理員和3位卡夫卡經紀人在本地運行。 我開始了一個生產者和一個消費者。我可以看到消費者正在消費信息。發佈給春季數據流項目中具有相同消費羣的所有消費者的郵件

然後,我開始使用相同消費羣組名稱(不同端口,因爲它是一個春季啓動項目)的三個消費者。但我發現所有的消費者都在消費(接收)消息。但是我期望消息是負載均衡的,因爲只有消息不會在消費者中重複。我不知道問題是什麼。

這裏是我的屬性文件

spring.cloud.stream.bindings.input.destination=timerTopicLocal 
spring.cloud.stream.kafka.binder.zkNodes=localhost 
spring.cloud.stream.kafka.binder.brokers=localhost 
spring.cloud.stream.bindings.input.group=timerGroup 

這組是timerGroup。

消費者代碼:https://github.com/codecentric/edmp-sample-stream-sink

生產者代碼:https://github.com/codecentric/edmp-sample-stream-source

回答

0

能否請您更新依存關係Camden.RELEASE(並開始使用卡夫卡0.9+)?在Brixton.RELEASE中,Kafka使用者是基於0.8的,並且需要傳遞instanceIndex/instanceCount作爲屬性才能正確分配分區。

Camden.RELEASE我們使用Kafka 0.9+消費者客戶端,它以您期望的方式進行負載平衡(我們也支持通過instanceIndex/instanceCount進行靜態分區分配,但我懷疑這不是您想要的)。我可以進一步瞭解如何使用Brixton進行配置,但我想升級應該是一個更容易的途徑。

相關問題