容器管理

为注释创建的容器未注册到应用程序上下文。 您可以通过调用getListenerContainers()RabbitListenerEndpointRegistry豆。 然后,您可以迭代此集合,例如,停止或启动所有容器,或调用Lifecycle方法 在 Registry 本身上,它将调用每个容器上的作。spring-doc.cadn.net.cn

您还可以使用其idgetListenerContainer(String id)— 代表 例registry.getListenerContainer("multi")对于由上述代码段创建的容器。spring-doc.cadn.net.cn

从版本 1.5.2 开始,您可以获取id已注册容器的值getListenerContainerIds().spring-doc.cadn.net.cn

从版本 1.5 开始,您现在可以为group拖动到RabbitListener端点。 这提供了一种机制来获取对容器子集的引用。 添加group属性导致Collection<MessageListenerContainer>以组名称注册到上下文中。spring-doc.cadn.net.cn

默认情况下,停止容器将取消 Consumer 并在停止之前处理所有预取的消息。 从版本 2.4.14、3.0.6 开始,您可以设置forceStopcontainer 属性设置为 true,以便在处理当前消息后立即停止,从而导致任何预取的消息重新排队。 例如,如果使用的是独占使用者或单活动使用者,这非常有用。spring-doc.cadn.net.cn