2017-10-05 102 views
0

我想在一个Spring引导应用程序中创建多个Kafka使用者组以处理不同的Kafka队列。需求场景基于消息的临界性,它应该推送到不同的Kafka队列。为了管理不同的卡夫卡队列,我想创建一个专门的卡夫卡用户组。但我不确定在一次春季启动应用程序中是否可以创建多个卡夫卡消费群。如何在一个Spring引导应用程序中创建多个Kafka Consumer Group

目前我有三个卡夫卡主题,每个主题有4个分区,只有一个卡夫卡消费者组和三个卡夫卡消费者。这三名卡夫卡消费者从三个专用卡夫卡队列中读取。

我使用Google搜索,但无法找到关于此的任何线索。

回答

1

你的问题不清楚,听起来像你不完全熟悉卡夫卡。 首先在卡夫卡叫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 ""; 

@KafkaListener你的目的。

相关问题