回答
MSMQ是一個隊列,其主要優點是將發送者和接收者的消息分離(例如,接收系統可以脫機)。
如果延遲時間保證是一個要求,那我就看看其他地方(如.NET遠程/ WCF NetTCP結合等)
這就是說,我們已經使用MSMQ低級別的硬件標準,突發速率>> 500條消息每秒,但在一個集成(EAI)環境中,與MSMQ的好處是:
- 異步 - 其中發送和接收的消息可以以不同的速率
- 潛在交易(例如DTC下,消息發生過程可以放在隊列中並在U下的數據庫中更新OW)
- 已審覈(日期)
- 死信隊列 - 即,如果接收方在定義的時間段之後從不接收消息。
低延遲從來不是一個要求 - 可靠性和完整性是主要驅動因素。
對於小的非事務性消息,這在理論上可能是可能的,但它在我個人聽說的高端。遠離事務性隊列離開,但 - 我嚴重懷疑你將能夠得到那種吞吐量在任何現實的平臺。
+1 - 香菸盒計算表明,在10k /消息=每小時180GB時,持續的速率爲300k信息/分鐘。不在MSMQ的聯賽中。 – StuartLC 2012-08-16 13:24:12
我忘了提及我即將刪除所有收到的消息,這些消息是由MSMQ服務器上運行的服務 – 2012-08-16 13:26:05
由於可怕的Insufficient Resources problem,我在MSMQ的這種卷中遇到了問題。
看起來這很少見,但它發生在我身上幾次。
看看這篇文章:link它說,MSMQ不應該被用作存儲產品,但用作傳輸機制。
您可能有服務從隊列中讀取消息並以事務方式處理它們。 Here (MSDN link)你可以找到一些例子。創建一個小樣本,做一些負載測試,看看它是否工作。
- 1. 用RabbitMQ替換MSMQ系統
- 2. 嵌入式系統:插座與MSMQ
- 3. Scala和Java實時系統
- 4. 系統定時器實現
- 5. 實時系統的併發
- 6. 實時系統的體系結構?
- 7. 在實時系統上編程
- 8. 實施實時投票系統
- 9. 實時與系統時鐘分開
- 10. 在Python中跟蹤系統和實時統計分析
- 11. 使用動態端點MSMQ實現訂閱者/發佈者系統
- 12. API.AI系統實體
- 13. 事件觸發的實時系統
- 14. VirtualMachine上的Sun Java實時系統/雲
- 15. Rails的王菲實時通知系統
- 16. 實時操作系統調度程序
- 17. 實時分析處理系統設計
- 18. 什麼是實時系統的彗星?
- 19. 實時更新Web系統 - Ajax,PHP,MySQL
- 20. MSMQ嘗試接收消息時,拒絕訪問消息排隊系統
- 21. 在時間管理系統
- 22. 嵌入式系統vs實時系統我無法獲得差異
- 23. 實施回滾系統
- 24. 信用卡系統實施?
- 25. 實現排名系統
- 26. 實施通知系統
- 27. 標籤系統實現
- 28. 變子系統實現
- 29. 實體組件系統c#
- 30. OpenStack實例系統日誌
什麼是你想要使用MSMQ的原因是什麼? – 2012-08-16 13:07:34
對我(非常好,有SSD)的開發人員機器進行快速性能測試,在非事務性的隊列中,給出:30,050條消息/秒或1,803,055條消息/分鐘。綽綽有餘你需要什麼。 – 2014-04-10 15:15:32