2015-12-14 99 views
3

我使用的是Rebus(https://github.com/rebus-org(v.0.83)),直到现在,它已经全部在本地运行在一台机器上。现在我需要使用从我的网站到应用程序服务器的远程队列。我不清楚如何使用Rebus进行设置。几个问题Rebus和远程队列

  1. 我想我需要两台机器上的MSMQ(网络&应用程序)正确吗?我已将网站配置为UseMsmqInOneWayClientMode;
  2. 还是有办法指定通过http发送它?
  3. 我的配置看起来像这个或多或少。我猜inputQUeue需要指向本地机器而不是远程机器吗?

    <rebus inputQueue="mywebqueue" errorQueue="[email protected]" workers="1" maxRetries="5"> <endpoints> <add messages="MyLibrary.CreateMessage, MyLibrary" endpoint="[email protected]"/> </endpoints> </rebus>

帮助真的可以理解。

回答

1
  1. 是的。所有需要使用MSMQ的机器都需要安装MSMQ。即使作为单向客户端(如Web服务器),由于MSMQ在发送到远程计算机时通过提供传出队列来实现其高可用性。

  2. 我这么认为。我从未使用MSMQ超越其基本的可靠消息传递功能。谷歌周围,我敢打赌,你可以找到的东西;)

  3. 你的配置看起来不错。是的 - 输入队列始终是本地的,而您发送到的队列(错误队列和端点映射中指定的所有端点)也可以是远程的。

+0

非常适合我。 – Steven

+0

perhpas我应该打开另一个问题,但关于配置...因为这是在webworker方面,我真的需要'inputQueue =“mywebqueue”errorQueue =“MyErrorQueue @ mymachine”workers =“1”maxRetries =“5 “'部分? – Steven

+1

如果将其配置为单向客户端(位于配置文件的.Transport(...)部分中),则可以删除所提及的内容:) – mookid8000