kafka:消费者添加多个记录

ht4b089n  于 2021-06-07  发布在  Kafka
关注(0)|答案(1)|浏览(419)

我有三个消费者,都有多个示例,都在消费同一个主题。我希望每个消费者消费一次这个主题。为此,我创建了一个消费群体。据我所知,kafka应该足够聪明,可以选择一个服务示例来使用该主题,但这并没有发生,而且所有消费者的所有示例都在使用该主题
我认为这可能与三个消费者都具有相同的组名有关,因此我关闭了其中两个消费者,让一个消费者有两个示例,但我仍然看到两条记录进入数据库,而消费者组只应选择一个示例插入数据库。
我是做错了什么还是遗漏了什么?
应用程序.yml

  1. spring:
  2. cloud:
  3. stream:
  4. bindings:
  5. input-data:
  6. destination: publisheddata.t
  7. group: publisheddata
  8. kafka:
  9. bindings:
  10. input:
  11. consumer:
  12. autoCommitOffset: false
  13. binder:
  14. auto-create-topics: true
  15. kafka:
  16. mode: raw
  17. spring:
  18. cloud:
  19. stream:
  20. kafka:
  21. binder:
  22. brokers: kafka:9092
  23. zk-nodes: kafka:2181

频道.java

  1. public interface Channels {
  2. String INPUT_DATA = "input-data";
  3. @Input(INPUT_DATA)
  4. SubscribableChannel dataInput();
  5. }

数据处理程序.java

  1. @EnableBinding(Channels.class)
  2. @Configuration
  3. public class DataMessageHandler {
  4. @StreamListener(Channels.INPUT_DATA)
  5. public void handle(Message<?> message) {
  6. ... handling message ...
  7. }
eulz3vhy

eulz3vhy1#

万一以后有人碰到这个问题,在研究了几天之后,我发现问题出在我使用的springcloud版本上 Brixton.RELEASE ,一旦我把这个更新到 Dalston.SR2 这解决了我的问题

相关问题