【发布时间】:2022-01-17 12:41:45
【问题描述】:
我正在使用带有 KafkaListener 注释的 spring-kafka v2.5.2。
在运行时,我希望能够向消费者发送信号以停止消费。
我看到了autoStartup 参数,但它似乎只适用于初始化,之后无法更改。
我看到了 KafkaListenerEndpointRegistry 的方法 close()...
你有什么建议吗?
提前致谢。
【问题讨论】:
我正在使用带有 KafkaListener 注释的 spring-kafka v2.5.2。
在运行时,我希望能够向消费者发送信号以停止消费。
我看到了autoStartup 参数,但它似乎只适用于初始化,之后无法更改。
我看到了 KafkaListenerEndpointRegistry 的方法 close()...
你有什么建议吗?
提前致谢。
【问题讨论】:
给每个监听器一个id属性;然后,您可以使用 KafkaListenerEndpointRegistry bean 获取侦听器容器的引用,然后您可以启动和停止:getListenerContainer("myId").stop()。
这已记录在here。
【讨论】:
getListenerContainers() 并遍历它们。