2015-12-14 67 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