RabbitMQ多服务器配置模型

RabbitMQ multi server configuration model

我尝试构建一个多服务器消息交换系统。

我有一个名为 Master 的服务器和另一个名为 Slave 的服务器。 Master 向 Slave 发送消息,Slave 异步向 Master 发送消息。

我在两台服务器上都有 rabbitmq 服务器,并在两台服务器上都使用联合插件来获取消息。 所以两台服务器上的发布者和消费者只与本地 rabbitmq 服务器通信。服务器之间的所有消息交换仅通过 rabbitmq 完成。

它工作正常。当两台服务器都在线时。

我的要求是,当服务器之间没有网络连接时,应该收集消息直到连接恢复。 它不能 与联合插件一起使用。如果联合连接未激活,则消息不会存储在本地 rabbitmq 上。

我应该怎么做才能拥有一个消息可以等待连接传递到其他 rabbitmq 服务器的模型?

我需要提供有关我当前型号的更多信息吗?

有更简单的描述

RabbitMQ1 有交换 MASTER。 RabbitMQ2 创建了与 RabbitMQ1 的 link 的联合,并将权限分配给交换 MASTER

Publisher 写入 RabbitMQ1 以与路由密钥交换 MASTER 'myqueue'

消费者在交换 MASTER 和队列 'myqueue' 上侦听 RabbitMQ2。

如果有连接则一切正常 如果没有连接,则当连接恢复时,发布到 RabbitMQ1 的消息不会传送到 RabbitMQ2。

如何解决?

我找到了解决方案。 Federation 不是这种解决方案的好插件

我用了铲子。它正是我需要的