RabbitMQ:没有消息丢失的扇出交换?

xuo3flqw  于 2022-11-23  发布在  RabbitMQ
关注(0)|答案(1)|浏览(193)
RabbitMQ:  version 3.11.2

我希望配置一个扇出交换,其中将有两个消费者和一个生产者。在最坏的情况下,其中一个消费者可能离线数小时。
问题:如何配置扇出交换和/或使用者队列,以确保即使其中一个使用者离线几分钟或几小时,也不会丢失任何消息?

h79rfbju

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)通道.队列_绑定(交换=“日志”,队列=结果.方法.队列)
注意:如果需要处理脱机使用者,则需要持久性队列和持久性消息,而不是exclusiveauto-delete队列

相关问题