监听器容器队列
1.3版本为处理监听器容器中的多队列带来了多项改进。
容器可以初始配置为监听零队列。队列可以在运行时添加或移除。 这SimpleMessageListenerContainer当处理完任何预先获取的消息后,会回收(取消并重新创建)所有消费者。 这DirectMessageListenerContainer为每个队列创建/取消单个消费者,而不影响其他队列上的消费者。详见 JavadocaddQueues,addQueueNames,移除队列和removeQueueNames方法。
如果不是所有队列都可用,容器会每60秒尝试被动声明(并消耗)缺失的队列。
此外,如果消费者收到经纪人取消(例如队列被删除),消费者会尝试恢复,恢复后的消费者继续处理其他配置队列的消息。此前,一个队列的取消会取消整个消费者,最终容器会因缺失队列而停止。
如果你想永久移除队列,应该在删除队列前后更新容器,以避免未来尝试从中获取。