消息中間件的技術選型心得-RabbitMQ、ActiveMQ和ZeroMQ


消息中間件的技術選型心得-RabbitMQ、ActiveMQ和ZeroMQ


作者:chszs,轉載需注明。博客主頁:http://blog.csdn.net/chszs

RabbitMQ、ActiveMQ和ZeroMQ都是極好的消息中間件,可是我們在項目中該選擇哪個更適合呢?非常多開發人員面臨這個煩惱。以下我會對這三個消息中間件做一個比較,看了后你們就心中有數了。

RabbitMQ是AMQP協議率先的一個實現,它實現了代理(Broker)架構,意味着消息在發送到client之前能夠在中央節點上排隊。此特性使得RabbitMQ易於使用和部署,適宜於非常多場景如路由、負載均衡或消息持久化等,用消息隊列僅僅需幾行代碼就可以搞定。可是,這使得它的可擴展性差,速度較慢,由於中央節點添加了延遲,消息封裝后也比較大。


ZeroMQ是一個很輕量級的消息系統,專門為高吞吐量/低延遲的場景開發,在金融界的應用中常常能夠發現它。與RabbitMQ相比,ZeroMQ支持很多高級消息場景,可是你必須實現ZeroMQ框架中的各個塊(比方Socket或Device等)。ZeroMQ很靈活,可是你必須學習它的80頁的手冊(假設你要寫一個分布式系統,一定要閱讀它)。


ActiveMQ居於兩者之間,類似於ZemoMQ,它能夠部署於代理模式和P2P模式。類似於RabbitMQ,它易於實現高級場景,並且僅僅需付出低消耗。它被譽為消息中間件的“瑞士軍刀”。

要注意一點,ActiveMQ的下一代產品為Apollo。


終於,這三個產品:
1. 都有clientAPI且支持多種編程語言;
2. 都有大量的文檔;
3. 都提供了積極的支持。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM