我有一个场景,其中我需要执行一系列流程,每个步骤都已完成并在独立的应用程序中扩展。我正在将主题交流用于所有交流。当前的拓扑是这样的:
P-> X-> Q-> C / P-> X-> Q-> C
我们正在“版本化”队列以处理可能影响消息结构的需求变更。绑定可能看起来像这样:
使用绑定键step1.v1绑定到step1.v1.queue的step1.exchange
使用绑定键step1.v2绑定到step1.v2.queue的step1.exchange
还有其他与版本无关的绑定模式,这些绑定模式也使主题交换成为适当的选择。但是,我们仅使用一次交换就可以完成同一件事。
TLDR:当您的用例可以以任何一种方式工作时,使用多个主题交换而不是一个主题交换是否有好处?
最佳答案
看看“使用RabbitMQ实现性能和可伸缩性的路由拓扑” http://blog.springsource.org/2011/04/01/routing-topologies-for-performance-and-scalability-with-rabbitmq/