如何在春靴中按顺序消费卡夫卡话题 [英] how to consume kafka topics in sequence in spring boot
本文介绍了如何在春靴中按顺序消费卡夫卡话题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个问题,我让一个阿帕奇Kafka消费者在Spring Boot中消费了3个不同的主题。但我需要先使用第一个主题中的所有数据,然后再使用以下主题中的数据,有什么方法可以做到这一点吗?或者你会一直以同样的方式阅读它们吗?
@Component
public class KafkaTestListener {
@KafkaListener(topics = "${message.topic.name}", groupId = "${message.group.name}")
public void listenTopic1(String message) {....}
@KafkaListener(topics = "${message.topic.name2}", groupId = "${message.group.name}")
public void listenTopic3(String message) {....}
@KafkaListener(topics = "${message.topic.name3}", groupId = "${message.group.name}")
public void listenTopic3(String message) {.....}
}
推荐答案
- 给每个监听器
id
;将autoStartup
设置为false
。 - 将容器属性
idleEventInterval
设置为某个值。 - 添加
@EventListener
方法以接收ListenerContainerIdleEvent
s-请参阅https://docs.spring.io/spring-kafka/docs/2.5.3.RELEASE/reference/html/#events和https://docs.spring.io/spring-kafka/docs/2.5.3.RELEASE/reference/html/#event-consumption - 根据需要使用
KafkaListenerEndpointRegistry
启动和停止容器(通过id
)。
这篇关于如何在春靴中按顺序消费卡夫卡话题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文