2

我想了解如何扩展使用来自 Kafka 的同一主题的消息的应用程序(多个实例)。我的疑问是我是否有一个具有 4 个分区的 A 主题,并且我创建了一个 @KafkaListener 属性 concurrency = 4 和一个 groupId = "FixedGroup" 所以 spring 将创建 4 个工作人员,并且 kafka 将选择这 4 个工作人员来使用消息,每个分区一个工作人员,如果我扩大同一个应用程序的新实例(规模),这 4 个工作人员已经被分配为每个分区工作,并且新应用程序与前一个应用程序在同一个组中(因为它只是一个自动缩放)将处于空闲状态,并且自动缩放不会通过水平缩放提高消息处理性能,

4

1 回答 1

3

不会提高消息处理性能

那是对的; 同一组中只有一个消费者可以从一个分区消费。

您至少需要与消费者一样多的分区。

通常,您应该过度配置分区。对于较少数量的消费者,分区将被分布,因此每个消费者都被分配了多个分区。

除了添加更多分区之外,没有实际的解决方案。

于 2020-03-19T01:31:47.973 回答