我正在使用 Rebus ( https://github.com/rebus-org (v.0.83)),直到现在它都在一台机器上本地运行。现在我需要使用从我的网站到应用服务器的远程队列。我不太清楚如何使用 Rebus 进行设置。几个问题
- 我想我在两台机器(网络和应用程序)上都需要 MSMQ,对吗?我已将网站配置为
UseMsmqInOneWayClientMode
; - 或者有没有办法指定通过 http 发送?
我的配置大致是这样的。我猜 inputQUeue 需要指向本地机器而不是远程机器,对吧?
<rebus inputQueue="mywebqueue" errorQueue="MyErrorQueue@mymachine" workers="1" maxRetries="5"> <endpoints> <add messages="MyLibrary.CreateMessage, MyLibrary" endpoint="MyQueue@mymachine"/> </endpoints> </rebus>
非常感谢您的帮助。
最佳答案
是的。所有需要以某种方式使用 MSMQ 的机器都需要安装 MSMQ。即使作为单向客户端,例如您的网络服务器,因为 MSMQ 通过在您发送到远程计算机时提供传出队列来实现其高可用性。
我是这么认为的。除了其基本可靠的消息传递功能外,我从未使用过 MSMQ。 Google 一下,我打赌你能找到一些东西 ;)
您的配置看起来正确。是的 - 输入队列始终是本地的,而您发送到的队列(错误队列和端点映射中指定的所有端点)也可以是远程的。
关于msmq - Rebus 和远程队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34278539/