使用 Spring Kafka org.springframework.kafka.listener.ConcurrentMessageListenerContainer根据 ContainerProperties 和主题中的分区数创建多个侦听器。并且javadoc说“来自同一分区内的消息将按顺序处理”。所以如果只有 1 个分区并且并发设置为 10,会发生什么 - 不会有任何并发?或者消息是否会分发给 10 个听众但乱序?
不,肯定只有一个目标听众。一个分区 - 每个消费者组一个消费者的进程。这是 Apache Kafka 的特性。那不是 Spring Kafka 的问题。
您可以使用最近从您的侦听器方法并行来自该分区的消息TaskExecutor
。但这已经是您的应用程序 - 框架不会为您做任何事情。只是因为目标 Kafka 系统的性质。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句