对于两个不同的 RabbitMQ 服务器,将数据从交换移动到另一个交换的最佳方法是什么?

Which is the best way to move data from exchange to another exchange for two differents RabbitMQ servers?

问题是我有两个 RabbitMQ 集群服务器(生产和开发),在生产服务器中我有一个外部应用程序推送数据的交换,但它们只能在一个服务器中推送数据我需要移动数据从该产品交换到另一台服务器中的开发交换以进行一些测试。我一直在寻找一个允许某种服务器间交换绑定的扩展,但我认为这是不可能的。我能想到的唯一解决方案是 service/application 创建自己的队列,绑定到 prod exchange 并将数据从其队列推送到另一个服务器中的 dev exchange 而无需修改另一个应用程序。我想知道这是不是最好的方法,或者您是否知道另一种更有效的方法?

您可以使用 Shovel 插件。 RabbitMQ Shovel,一个核心 RabbitMQ 插件,可将消息从源单向移动到目标。

没有要求 运行 将铲子放在与其源或目的地相同的代理(或集群)上,尽管这是最典型的方法;铲子可以 运行 在一个完全独立的节点或集群上。

在这里查看更多.. https://www.rabbitmq.com/shovel.html

这里有更多链接..
https://www.rabbitmq.com/shovel-dynamic.html
https://www.rabbitmq.com/shovel-static.html