我想要实现的是内部网络中的 RabbitMQ 客户端与在 Azure 中运行的 Azure 服务总线消费者之间的互操作性。
RabbitMQ 客户端需要发布和订阅,Azure 服务总线消费者也是如此——所以我需要某种“双向代理”。我正在努力实现的图表:
+
Internal network | Azure
|
|
+--------+ | +----------+
| Client +---+ | +---+ Consumer |
+--------+ | | | +----------+
| | |
| +-----------------+ | +-------------------+ |
+-+ RabbitMQ Broker +---------+ Azure Service Bus +--+
| +-----------------+ | +-------------------+ |
| | |
+--------+ | | | +----------+
| Client +---+ | +---+ Consumer |
+--------+ | +----------+
|
|
|
+
AFAIK,RabbitMQ 代理和 Azure 服务总线都可以执行 AMQP 1.0。我看过rabbit shovel插件,但我认为这只会处理从内部客户端到Azure的消息发布,并且不允许客户端订阅Azure消费者发布的消息?还是我弄错了,铲子可以解决这个问题?
如果铲子不起作用,还有其他方法可以实现吗