RabbitMQ: version 3.11.2
我希望配置一个扇出交换,其中将有两个消费者和一个生产者。在最坏的情况下,其中一个消费者可能离线数小时。问题:如何配置扇出交换和/或使用者队列,以确保即使其中一个使用者离线几分钟或几小时,也不会丢失任何消息?
h79rfbju1#
将队列绑定到交换就足够了。请参阅此处了解更多详细信息https://www.rabbitmq.com/tutorials/tutorial-three-python.htmlresult = channel.queue_declare(queue =“”)此时,result.method.queue包含一个随机队列名称。例如,它可能看起来像amq. gen-JzTY 20 BRgKO-HjmUJj 0 wLg。其次,一旦消费者连接关闭,队列应该被删除。为此有一个独占标志:结果=通道.队列_声明(队列=“”,独占=True)通道.队列_绑定(交换=“日志”,队列=结果.方法.队列)注意:如果需要处理脱机使用者,则需要持久性队列和持久性消息,而不是exclusive和auto-delete队列
exclusive
auto-delete
1条答案
按热度按时间h79rfbju1#
将队列绑定到交换就足够了。
请参阅此处了解更多详细信息https://www.rabbitmq.com/tutorials/tutorial-three-python.html
result = channel.queue_declare(queue =“”)此时,result.method.queue包含一个随机队列名称。例如,它可能看起来像amq. gen-JzTY 20 BRgKO-HjmUJj 0 wLg。
其次,一旦消费者连接关闭,队列应该被删除。为此有一个独占标志:
结果=通道.队列_声明(队列=“”,独占=True)通道.队列_绑定(交换=“日志”,队列=结果.方法.队列)
注意:如果需要处理脱机使用者,则需要持久性队列和持久性消息,而不是
exclusive
和auto-delete
队列