我刚刚开始使用Rhino Service Bus,而我正在尝试使用MSMQ作为传输在2台服务器之间中继消息。出于某种原因,当后端/主机位于不同的服务器上时,Rhino客户端不会收到消息,但是当它位于同一台机器上时可以正常工作。
如果我使用Rhino队列而不是MSMQ作为传输,则消息将通过服务器发送。
我甚至关闭了防火墙。我还确保消息端点指向正确的服务器,而总线端点始终是本地的。
有什么想法吗?
谢谢,
答案 0 :(得分:0)
有很多原因导致消息无法通过网络传输到其他服务器。我建议你编写一个简单的应用程序来向其他服务器发送消息。这将确定Rhino是否存在问题(我怀疑)。
要检查的另一件事是不同机器上的分布式事务控制器是否可以通信。这是确保消息的事务完整性所必需的。您可以使用DTCPing来测试两台服务器之间的DTC连接。
我在调试MSMQ问题时找到了这个blog post列表工具。有些链接有点陈旧,但似乎很有用。
最后,您还可以尝试MQPing。它在MSMQ的工作组模式下不起作用,但它可能会有所帮助。
答案 1 :(得分:0)
原来是防火墙问题。应该打开服务总线和客户端的端口(在rhino.config中指定)。杜!