我已经创建了一个使用Spring的Kafka消费者,并将其部署到云铸造厂。主题有10个分区。我计划将应用程序扩展到10个实例,以便每个实例可以使用来自一个分区的消息。Spring还支持并发消息侦听器容器,我猜它支持从每个分区创建多个要使用的线程。因此,例如,如果我有5个使用者实例,每个使用者实例可能有两个来自分区的线程。既然我计划为每个分区创建一个app实例,那么使用并发使用者有什么好处吗?
因为我的优先级是快速处理主题中的消息,所以我认为为每个分区提供一个app实例将为每个分区中要处理的消息提供足够的资源。
发布于 2017-09-26 02:06:23
这是正确的,您只需要在同一个消费者组中有10个单线程的消费者。因为您只有10个分区,所以Kafka中的再平衡机制将在10个实例之间分配它们。
该容器中的并发性将是不必要的。考虑使用KafkaMessageListenerContainer代替。
https://stackoverflow.com/questions/46416669
复制相似问题