0

我的场景:

我们正在使用 RabbitMQ 将消息广播到网络中大约 300 台其他计算机。我们在 Windows Server、C#.Net 客户端 (EasyNetQ) 上使用 RabbitMQ

基本解决方案是为每台目标计算机分配一个路由密钥,定义一个交换并将每个路由密钥绑定到一个队列,并为每个队列定义一个铲子到目标服务器。在这种情况下,我们有 1 个交换器、300 个队列和 300 个铲子。

问题陈述:这么多的铲子和队列的维护和管理很困难,并且给rabbitmq带来了更多的负载。

问题:我认为有一种简单的方法可以做到这一点:比如定义一个交换、一个队列和基于路由的铲子(300)。你推荐什么解决方案?

提前致谢。

4

1 回答 1

1

您的第二个解决方案对我来说看起来更好。
在您的服务器上创建一个主题/扇出交换,并让所有铲子从该交换中为每个客户端消耗。
您可以使用广播策略在该交换上发布消息,也可以使用通配符作为路由密钥。

于 2017-01-18T08:58:33.570 回答