【发布时间】:2016-06-12 15:41:12
【问题描述】:
对于消费者,当声明一个队列为“独占”时,当消费者根据文档断开连接时,队列将被删除。
假设队列中有消息等待处理并且消费者下线,那么当队列被移除时,这个“独占”队列上的所有消息都将丢失。
是否有任何策略或方法来保持队列“独占”但保留队列/代理中的消息以便不会丢失任何内容?
提前致谢。
【问题讨论】:
标签: queue rabbitmq amqp messagebroker
对于消费者,当声明一个队列为“独占”时,当消费者根据文档断开连接时,队列将被删除。
假设队列中有消息等待处理并且消费者下线,那么当队列被移除时,这个“独占”队列上的所有消息都将丢失。
是否有任何策略或方法来保持队列“独占”但保留队列/代理中的消息以便不会丢失任何内容?
提前致谢。
【问题讨论】:
标签: queue rabbitmq amqp messagebroker
独占队列将在创建的通道断开连接时被删除。
您可能想要的是独占消费者,当从队列消费时,可以通过将 exclusive 参数设置为 true 来完成。独占消费者确保只有一个消费者可以消费这个队列。它一旦被消费就将所有其他消费者排除在队列之外。
总而言之,要使队列独占一个消费者并将消息持久保存在该队列中,您应该:
【讨论】: