监听器容器队列

版本 1.3 引入了许多改进,用于处理监听器容器中的多个队列。

容器最初可以配置为监听零个队列。队列可以在运行时添加和删除。SimpleMessageListenerContainer 会在处理完任何预取消息后回收(取消并重新创建)所有消费者。DirectMessageListenerContainer 会为每个队列创建/取消单独的消费者,而不会影响其他队列上的消费者。请参阅 addQueuesaddQueueNamesremoveQueuesremoveQueueNames 方法的 Javadoc

如果并非所有队列都可用,容器会每 60 秒尝试被动声明(并从其中消费)缺失的队列。

此外,如果消费者从代理接收到取消(例如,如果队列被删除),消费者会尝试恢复,并且恢复的消费者会继续处理来自任何其他配置队列的消息。以前,一个队列上的取消会取消整个消费者,最终,容器会因缺失队列而停止。

如果您希望永久删除一个队列,您应该在删除队列之前或之后更新容器,以避免将来尝试从中消费。

© . This site is unofficial and not affiliated with VMware.