1
我有兩臺機器在不同的領域。域名彼此不知道(他們之間沒有信任)。我希望使用net.msmq綁定來將數據從一個端點傳遞到另一個端點。如何將消息隊列設置爲兩個WCF端點之間的通信通道?
所以,讓A和S是兩臺機器,其中A必須能夠將消息發送到S. 然後,在A的配置文件中,有這樣的綁定定義:
<netMsmqBinding>
<binding name="msmq_Binding"
durable="true"
useActiveDirectory="false"
exactlyOnce="false">
<security>
<transport msmqAuthenticationMode="None" msmqProtectionLevel="None"/>
</security>
</binding>
</netMsmqBinding>
另外,以下地址用於引用服務器上的消息隊列: net.msmq:// localhost/private/nc。在同一臺服務器上的WCF配置定義端點:
<service name="Shunra.Common.Csla.WcfOneWayPortal" >
<endpoint address="net.msmq://localhost/private/nc"
binding="netMsmqBinding"
bindingConfiguration="nc_msmq"
contract="Shunra.Common.Contract.IWcfOneWayPortal" />
</service>
在我的測試此安裝方法的效果,但是,唉!我正在本地機器上測試它,所以沒有應用真實生活約束。 我的問題 - 是否可以在我的方案中使用專用隊列進行實際部署?實際上,這兩臺機器位於兩個未知域之間,它們之間沒有任何信任。 或者我們應該使用公共隊列嗎?
謝謝。
標記嗨提到HTTP橋,我需要做同樣的事情,我完全新的WCF。你想要做的事情似乎是要走的路。你有沒有設法讓它工作? – 2011-09-06 15:37:48
@ chrisp_68 - 我打算給你兩個建議,目前你可能不會感激,但如果你聽他們的話 - 你會在以後爲自己節省很多麻煩。 1.不要使用WCF,而要看看OpenRasta。 2.不要使用MSMQ。無需開始排隊或採取一些開源實施。這兩個建議都是基於我個人對我們項目的體驗。在使用MSMQ近兩年後,我們完全拋棄了它,在使用WCF近3年後,我們用服務器端的OpenRasta和客戶端的Hammock進行了純REST通信。 – mark 2011-09-06 17:28:28