【发布时间】:2017-10-10 12:57:06
【问题描述】:
我有一个场景,发布者需要将消息发送到已知的交换器(他们不会直接知道下游队列)。大多数消息应该被传递到每个绑定队列(如扇出),但有些消息只需要传递到特定的绑定队列。我想避免多次交换以及多次队列绑定。
我当前的解决方案使用标头路由,其中消息具有两个标头之一,将其标识为“全局”或“特定于特定子”,其中下游队列绑定到与这两个标头的匹配任意.我认为这会起作用,但我觉得应该有一个更简单的解决方案。
我试图找到一个可以“扇出除特定消息之外的所有消息”的交换插件,但我找不到这样的插件。除此之外,关于如何实现这种路由策略的任何想法?
【问题讨论】:
-
不知道为什么你会被否决,但我认为主题交流会是最好的选择。
-
@mshindal - 也不知道为什么;对于合法用例来说,这似乎是一个合理的问题(我已经进行了大量研究)。关于您的建议,我不确定如何通过主题交换来实现这一点,除非我为每个客户端绑定两个队列(一个用于“所有消息”,一个用于“特定消息”)。两个队列是您的想法吗?
标签: rabbitmq amqp rabbitmq-exchange