2011-05-01 57 views
9

我真的從Message Queue開始,我正在尋找非常基本的信息,如何去做等等。Microsoft消息隊列。它是否被棄用?

但是我對我的發現有一種奇怪的感覺。看起來「Message Queue Server」不是Visual Studio 2010,Windows 7或Microsoft最後一款產品的「標準」方式,因爲我發現的所有信息都與舊的Microsoft產品有關。或者那是我的第一印象。其實:http://www.microsoft.com/msmq/不運行。它是空的?

總結:我不知道爲什麼......但我認爲來自微軟的Message Queue並不是一個「尖端」產品,而是我的努力,也許還有另一種替代產品。這是真的還是我錯了?

什麼新產品現在提供相同的功能?

謝謝。

+0

我現在知道了(感謝所有答案)我必須使用MSMQ,但通過WCF服務。問候。 – ferpega 2011-05-01 15:24:10

回答

3

它用於舊產品,但我從來沒有任何理由認爲它已過時。

支持消息隊列的一個示例是WCF

沒有任何其他方式可以將單向消息發送到WCF服務器,即使服務器在發送時關閉,您也知道該WCF服務器將到達該服務器。

+0

這個鏈接真的很好,你的答案是第一個。感謝所有人的答覆。我準備好學習MSQM + WCF .. :-) – ferpega 2011-05-01 15:22:30

3

MSMQ還活着。當我們需要可靠的交付時,我們在生產中使用它,但不是交互/實時響應。它也與WCF集成。

3

MSMQ未被棄用。正如其他人已經注意到的那樣,它提供了其他類型的通信形式不具備的能力(可靠的單向消息傳遞和不可靠的終端之間的不可靠連接)(但MSMQ確實與其他消息傳遞中間件(包括IBM的WebSphere * MQ等事物)重疊。

我不知道你在哪裏得到了該鏈接,但microsoft.com有很多信息的內聯的:

3

消息隊列是Windows核心技術。它已經存在了很長一段時間,它在Windows 2000發行版中功能完整。在Windows中沒有替代品,除了其他供應商提供的消息排隊解決方案之外,沒有其他功能可以接近它的功能。

這使得它成爲一個關鍵組件,但不合適。關於NTFS文件系統一樣令人興奮。你很少直接編程MSMQ這些天,另一個原因你沒有看到太多。推薦的方法是自.NET 3.0起可用的WCF

+0

所以,你說的是使用MSMQ我必須用WCF「像代理或中間人」那樣做。你不是嗎? – ferpega 2011-05-01 15:13:24

+3

沒有要求,在代碼中使用MessageQueue類不是* verboten *。它確實在.NET 3.0變得可用之前完成了這項工作。 WCF只是一種方便,它更有可能讓你的代碼更快完成並且無bug。更可能在其他執行環境中使用。 – 2011-05-01 15:18:19

+0

感謝您的澄清漢斯。 – ferpega 2011-05-01 15:26:05

3

我不能說MSMQ已被棄用,但我可以與MS MSQQ & WCF分享我的經驗。我們有一個非HTTP激活的WCF隊列,恰好使用.NET 3.5通過MSMQ激活。爲了獲得高可用性,我們已經對該MSMQ進行了聚類。

我們發現,當集羣發生故障時(比如定期維護),WCF服務進入一種狀態,從中恢復的唯一方法是回收應用程序池。我們打開了一張MS總理支持的票據,他表示這是WCF處理MSMQ的一個缺陷,並且他們不會在3.5 SP1或4.0中修復它,但會考慮在4.5中修復它。

我們還沒有檢查過他們是否回去並在4.5中修復,但是這樣的經歷確實給我留下了MS對於MS選擇投入資源的印象。