4

我正在使用 RabbitQM 服务器构建集群。我使用铲子插件将消息从一个rabbitmq传递到其他(不同的机器)

它工作正常。但是我想测试当服务器之间没有网络连接时它的行为。

在每台服务器上,我都有本地队列。我将消息推送到它,然后铲子将消息传递到远程rabbitmq队列

为了模拟我所做的网络问题

iptables -D OUTPUT -d xx.xx.xx.xx -j DROP

禁用与远程服务器 xx.xx.xx.xx 的连接

然后我将消息推送到本地队列,它从队列中消失但不在远程服务器上!怎么会这样?在从队列中删除消息之前,铲子是否检查远程队列是否可用?

如何使其正常工作?我希望铲子不会从 q 队列中删除消息,直到确保 ti si 传递到远程队列。

4

1 回答 1

2

我找到了解决我的问题的方法。我改变了铲子的设置。有选择

ask_mode,on_publish

我改为

ask_mode, on_confirm

它开始正常工作。

于 2015-12-29T13:10:48.610 回答