2011-02-08 31 views
1

根據此:http://msdn.microsoft.com/en-us/library/ms811053.aspx讀取遠程隊列意味着調用RPC調用。從本地隊列讀取時怎麼辦? RPC是否也被使用?從本地私人MSMQ讀取時使用什麼協議?

我試圖使用的場景是從本地隊列中讀取多個服務。使用遠程隊列RPC將創建一個阻塞調用,以防止其他服務從遠程隊列讀取。但是,如果隊列是本地的,由於MSMQ一次處理來自一個服務的請求,是否仍然會阻止呼叫?

回答

1

接收消息的本地訪問使用本地RPC。
http://technet.microsoft.com/en-us/library/cc738291(WS.10).aspx

程序是一樣的。如果你沒有打開共享隊列(即你指定了MQ_DENY_RECEIVE_SHARE),那麼無論本地或遠程活動如何,你都會阻塞。

乾杯
約翰Breakwell

+0

所以不從本地隊列接收創建阻塞調用? MSMQ最佳做法是從本地隊列中檢索不是遠程隊列。如果有多個進程從本地隊列接收,每個進程是否會創建阻塞調用? – legion 2011-02-13 01:29:58