该版本仍在开发中,尚不被认为是稳定的。对于最新的稳定版本,请使用 Spring AMQP 3.2.6! |
侦听器容器队列
1.3 版引入了许多改进,用于处理侦听器容器中的多个队列。
容器最初可以配置为侦听零队列。
可以在运行时添加和删除队列。
这SimpleMessageListenerContainer
在处理任何预取消息时回收(取消和重新创建)所有使用者。
这DirectMessageListenerContainer
为每个队列创建/取消单个使用者,而不会影响其他队列上的使用者。
请参阅 Javadoc 中的addQueues
,addQueueNames
,removeQueues
和removeQueueNames
方法。
如果并非所有队列都可用,则容器会尝试每 60 秒被动声明(并从中消耗)缺少的队列。
此外,如果使用者收到来自代理的取消(例如,如果删除了队列),则使用者会尝试恢复,并且恢复的使用者将继续处理来自任何其他已配置队列的消息。 以前,取消一个队列会取消整个使用者,最终容器将因缺少队列而停止。
如果要永久删除队列,则应在删除队列之前或之后更新容器,以避免将来尝试从中消费。