我设置了Masstransit示例应用程序,一切都很棒。本地操作msmq看起来不错。
现在我开始将masstransit放入我的真实应用程序中。在我的真实应用程序中,我有来自四台服务器的作业,并且处理发生在两个工作系统上。
似乎masstransit总是希望推动:
MSMQ://本地主机/ ...
但我想我会设置一个单独的中央msmq服务器:msmq:/// ...
看来(我可能会遗漏一些东西!如果我关闭,请纠正我!)当使用msmq时,我需要在多台机器上设置msmq,并配置msmq以便从一台机器路由到另一台机器。
我错过了什么吗?
我应该跳过msmq并立即跳转到rabbitmq(这似乎解决了这个问题)?
是否有一些基本的msmq知识(可能不在masstransit文档中)?
谢谢你!答案 0 :(得分:1)
首先我建议人们使用RabbitMQ而不是MSMQ,除非你出于某种原因必须使用DTC。即便如此,我建议您重新考虑使用DTC。
但鉴于你有一些约束,你不能战斗。您欢迎使用中央MSMQ服务器,但它并没有提供大量的价值。发送消息的每个服务器必须在本地安装MSMQ,因为它的工作原理。在通过相关的其他计算机发送消息之前,消息实际上最终会在传出队列中结束。如果你有多机MSMQ设置,过去对我来说就像是:
因此,对于这3台计算机,您唯一没有msmq:// localhost /是对配置中订阅服务的引用。