我有一個場景,發佈者需要向已知交換機發送消息(他們不會直接知道下游隊列)。大部分消息應該傳遞給每個綁定隊列(如扇出),但有些消息只需要傳遞給特定的綁定隊列。我想避免多次交換以及多個隊列債券。RabbitMQ/AMQP交換路由策略
我當前的解決方案使用頭部路由,其中消息具有兩個頭中的一個,將其標識爲「全局」或「特定於某個特定子」,其中下游隊列綁定在匹配上 - 頭。我認爲這會起作用,但我覺得應該有一個更簡單的解決方案。
我試圖找到一個交換插件,將「扇出所有消息,除了特定的消息」,但我找不到這樣的插件。除此之外,還有關於如何實施這種路由策略的想法?
不知道爲什麼你要downvoted,但我認爲一個話題交換將是最好的選擇這個。 – mshindal
@mshindal - 不知道爲什麼;對於合法的用例來說這似乎是一個合理的問題(我已經完成了大量的研究)。關於你的建議,除非我爲每個客戶綁定兩個隊列(一個用於「所有消息」,另一個用於「特定消息」),否則我不確定如何使用主題交換進行此項工作。你有兩個隊列嗎? – eric