如何在一个弹簧启动应用程序中创建多个Kafka使用者组

时间:2017-10-05 15:31:56

标签: spring-boot apache-kafka kafka-consumer-api spring-kafka

我想在一个Spring启动应用程序中创建多个Kafka使用者组来处理不同的不同Kafka队列。需求方案基于应将其推送到不同Kafka队列的消息关键性。为了管理不同的Kafka队列,我想创建一个专门的Kafka消费者群体。但我不确定天气是否可以在一个弹簧启动应用程序中创建多个Kafka使用者组。

目前我有三个kafka主题,每个主题有4个分区,只有一个kafka消费者群体,有三个kafka消费者。这三个kafka消费者从三个专用的kafka队列中读取。

我用谷歌搜索但无法找到任何关于此的线索。

1 个答案:

答案 0 :(得分:1)

你的问题不清楚,听起来你完全不熟悉卡夫卡。 首先在Kafka中调用td,而不是队列。它是主题概念,因为我们可以订阅不同的消费者群体来获取相同的消息 - 发布订阅者语义。

还不清楚为什么你需要几个消费者群体,因为即使在同一群体中,不同的消费者也可以消费不同的主题。

无论如何你应该考虑使用:

topic

/** * Override the {@code group.id} property for the consumer factory with this value * for this listener only. * @return the group id. * @since 1.3 */ String groupId() default ""; 上为您的目的。