我有一个看起来像的 RabbitListener:
@RabbitListener
public class ProductListener {
@Queue(value = "product", executor = "product-listener")
public void receive(MyType message) {
// process message
}
}
在某些情况下,我想关闭我的应用程序。但是,在这样做之前,我想阻止 RabbitListner 使用新消息并给它一些时间来完成对已收到消息的处理。
在春天,这应该可以通过RabbitListenerEndpointRegistry#getListenerContainer(String)
根据如何停止使用 @RabbitListener 消费消息和如何优雅地停止使用 @RabbitListener 消费消息来实现。
我没有为 Micronaut 找到类似的东西。Micronaut 可以做到这一点吗?