gpt4 book ai didi

rabbitmq - 与多个 RabbitMQ 主机的强大 aio-pika 连接

转载 作者:行者123 更新时间:2023-12-05 04:05:26 29 4
gpt4 key购买 nike

在我们的设置中,我们有一个在三台主机上运行的中央 RabbitMQ 实例,每台主机都有自己的 URL。

为了维护,这些主机中的任何一个都可能随时停机几个小时。发生这种情况时,我们想连接到其他主机之一。

我们一直在使用aio_pika.connect_robust 进行连接,但它只接受一个主机作为参数。

如果重新连接可以在后台无缝进行,那就太完美了。工作人员可以从连接到一台主机的消息中获取消息,对其进行处理,然后通过不同的连接确认它。

解决这个问题的最佳方法是什么?

最佳答案

A worker could get a message from the connection to one host, work on it and then acknowledge it over a different connection

这是不可能的,因为 acks 与 channel 相关联。当第一个 channel 关闭时,RabbitMQ 将重新排队消息并将其重新传递给另一个消费者。

看起来 aio-pika 不支持选择连接的多个主机。我建议您自己捕获与连接相关的异常以选择另一个主机,或者在您的应用程序和 RabbitMQ 之间放置 haproxy。

关于rabbitmq - 与多个 RabbitMQ 主机的强大 aio-pika 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51210556/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com