Rabbitmq 代理内部流量到Azure服务总线
我试图实现的是内部网络中RabbitMQ客户机与Azure中运行的Azure服务总线消费者之间的互操作性 RabbitMQ客户端需要发布和订阅,Azure服务总线消费者也需要发布和订阅,因此我需要某种“双向代理”。我试图实现的目标的示意图:Rabbitmq 代理内部流量到Azure服务总线,rabbitmq,azureservicebus,rabbitmq-shovel,Rabbitmq,Azureservicebus,Rabbitmq Shovel,我试图实现的是内部网络中RabbitMQ客户机与Azure中运行的Azure服务总线消费者之间的互操作性 RabbitMQ客户端需要发布和订阅,Azure服务总线消费者也需要发布和订阅,因此我需要某种“双向代理”。我试图实现的目标的示意图: + Internal network | Azure |
+
Internal network | Azure
|
|
+--------+ | +----------+
| Client +---+ | +---+ Consumer |
+--------+ | | | +----------+
| | |
| +-----------------+ | +-------------------+ |
+-+ RabbitMQ Broker +---------+ Azure Service Bus +--+
| +-----------------+ | +-------------------+ |
| | |
+--------+ | | | +----------+
| Client +---+ | +---+ Consumer |
+--------+ | +----------+
|
|
|
+
另外,RabbitMQ代理和Azure服务总线都可以执行AMQP1.0。我看过兔子铲插件,但我认为这只会处理从内部客户端到Azure的消息发布,而不允许客户端订阅Azure消费者发布的消息?还是我搞错了,铲子能解决这个问题
如果铲子坏了,有没有其他方法来实现这一点我从小组里的几个关键工程师那里得到了回应 我错了-铲子实际上是双向的,既充当发布者又充当消费者,因此您可以从远程代理发送和接收消息 然后,我应该能够通过在内部RabbitMQ代理中安装和配置来满足我的需求 但是,连接到Azure Service Bus代理时存在一些问题:
amqpMessage.Properties.GroupId=mySessionId
)amqpMessage.MessageAnnotations[new Symbol(“x-opt-partition-key”)]=myPartitionKey
)@从理论上讲,这应该行得通,但我没能做到。我花了很多时间搞乱了铲子插件,但从未让它连接到服务总线。我看到有一些相关的,各种各样的问题,关于它在哪里看起来像其他人已经得到了它的工作。这个答案对我帮助很大。我一直在跟踪,这对我很有效:)