0

我们在MSMQ之上使用NServiceBus。现在我们正在采取行动来使用RabbitMQ--我们希望有一个集中的队列,并发现RabbitMQ最能满足我们的需求。NServiceBus RabbitMQ - DirectRoutingTopology与每种消息类型的单独交换

转换我们的项目非常简单,在RabbitMQ中我们注意到它为每个端点和该端点中的消息类型创建了交换(和队列)。

我读过更改路由拓扑部分http://docs.particular.net/nservicebus/rabbitmq/configuration-api并写有

对于不太复杂的情况下,您可以使用DirectRoutingTopology

什么文件未能解释是提出解决方案的参数为complex

我搜索了并找不到解释什么被认为是复杂的地方,何时DirectRoutingTopology应该用于使用多个交换的默认选项。或者每种方法之间的差异/性能考虑因素是什么。

有谁知道吗?

回答

0

这不是真正的性能问题,更重要的是以最好的方式使用该技术。

每个队列都是要完成的工作单元。假设我发送messageA,如果有1个工作单元要完成,那么与1个队列进行1次交换来处理消息是有意义的。

比方说,你有messageB需要采取行动X Y到被执行。在这种情况下,你有1个对攻,将消息发送到2个不同的队列(FANOUT交易所)

比方说,你有messageC需要行动X ORŸ基于参数来执行。在这种情况下,您希望使用指定路由的DIRECT交换指定给2个不同的队列(但消息只会在2个队列中的1个中结束)。

希望这很有道理。

相关问题