不可靠网络上的RabbitMQ跨数据中心消息传递

不可靠网络上的RabbitMQ跨数据中心消息传递,rabbitmq,message-queue,messaging,Rabbitmq,Message Queue,Messaging,服务器A和B位于两个不同的物理位置-每个位置都有一个RabbitMQ实例。连接这些地点的网络非常糟糕,而且完全不可靠。应用程序的具体要求是,放置在服务器A队列上的消息在服务器B上镜像,反之亦然 不可靠的网络似乎对消息传递的可靠性造成了严重破坏——我目前正在使用的是Spoot插件,但它似乎在奇怪的场合丢弃消息。我只能假设消息在被正确地传递到目标队列之前已经从源队列中得到了确认,但是日志中没有任何信息表明发生了这种情况 有没有更好的方法在这样不可靠的网络上实现此队列镜像?我考虑过完全放弃队列,转而采

服务器A和B位于两个不同的物理位置-每个位置都有一个RabbitMQ实例。连接这些地点的网络非常糟糕,而且完全不可靠。应用程序的具体要求是,放置在服务器A队列上的消息在服务器B上镜像,反之亦然

不可靠的网络似乎对消息传递的可靠性造成了严重破坏——我目前正在使用的是Spoot插件,但它似乎在奇怪的场合丢弃消息。我只能假设消息在被正确地传递到目标队列之前已经从源队列中得到了确认,但是日志中没有任何信息表明发生了这种情况


有没有更好的方法在这样不可靠的网络上实现此队列镜像?我考虑过完全放弃队列,转而采用更同步的方法(可能是http api)但是,如果不了解是否有更好的方法在脆弱的网络连接中实现镜像队列,或者如何更准确地确定问题所在,我宁愿不这样做。

铲子的设计考虑到了故障。确保电铲配置的
ack\u模式
在确认时设置为
。这样,消息将不会从源代理中消失,直到完全确认已传递到目标代理。请参见

我很惊讶地听到Spoot插件正在删除消息,或者您可以查看Federation插件:Spoot配置将非常有用