天天看點

幾種消息中間件的比較-activemq,robbitmq,rocketmq,kafka

1.activemq

activemq是Apache出品的,完全支援一個完全支援JMS1.1和J2EE 1.4規範的架構. 

⒈ 多種語言和協定編寫用戶端。語言: Java,C,C++,C#,Ruby,Perl,Python,PHP。應用協定: OpenWire,Stomp REST,WS Notification,XMPP,AMQP 

⒉ 完全支援JMS1.1和J2EE 1.4規範 (持久化,XA消息,事務) 

⒊ 對Spring的支援,ActiveMQ可以很容易内嵌到使用Spring的系統裡面去 

4.支援通過JDBC和journal提供高速的消息持久化 

5.不适用于上千個隊列的應用場景

2.robbitmq

RabbitMQ是AMQP協定領先的一個實作,它實作了代理(Broker)架構 

1.結合erlang語言本身的并發優勢,性能較好,但是不利于做二次開發和維護 

2.消息在發送到用戶端之前可以在中央節點上排隊。此特性使得RabbitMQ易于使用和部署,适宜于很多場景如路由、負載均衡或消息持久化等,用消息隊列隻需幾行代碼即可搞定。但是,這使得它的可擴充性差,速度較慢,因為中央節點增加了延遲,消息封裝後也比較大 

3.支援持久化消息

3.rocketmq

rocketmq是阿裡使用的開源的分布式消息系統,支援分布式 

1.能保證消息的順序 

2.提供豐富的消息拉取模式 

3.億級消息堆積能力 

4.同樣支援持久化消息 

5.部署由一個 命名服務(nameserver)和一個代理(broker)組成,支援在broker端對消息進行過濾 

6.高可用,可以支撐淘寶的雙十一流量

4.kafka

kafka的設計初衷就是為了統計日志 

1.吞吐量大,即使是非常普通的硬體Kafka也可以支援每秒數百萬的消息 

2.支援分布式 

3.可靠性較前面的稍弱(少量丢失消息) 

幾種消息中間件的比較-activemq,robbitmq,rocketmq,kafka

--------------------- 

作者:zzzgd_666 

來源:CSDN 

原文:https://blog.csdn.net/zzzgd_666/article/details/80880537 

版權聲明:本文為部落客原創文章,轉載請附上博文連結!

繼續閱讀