MQ框架的比較

2021-09-12 18:38:24 字數 1710 閱讀 8908

mq框架非常之多,比較流行的有rabbitmq、activemq、zeromq、kafka。這幾種mq到底應該選擇哪個?要根據自己專案的業務場景和需求。下面我列出這些mq之間的對比資料和資料。

第一部分:rabbitmq,activemq,zeromq比較

1、 tps比較 一

zeromq 最好,rabbitmq 次之, activemq 最差。這個結論來自於以下這篇文章。

測試環境:

model: dell studio 1749

cpu: intel core i3 @ 2.40 ghz

ram: 4 gb

os: windows 7 64 bits

其中包括持久化訊息和瞬時訊息的測試。注意這篇文章裡面提到的mq,都是採用預設配置的,並無調優。

2、tps比較二

zeromq 最好,rabbitmq次之, activemq最差。這個結論來自於一下這篇文章。

顯示的是傳送和接受的每秒鐘的訊息數。整個過程共產生1百萬條1k的訊息。測試的執行是在乙個windows vista上進行的。

3、持久化訊息比較

zeromq不支援,activemq和rabbitmq都支援。持久化訊息主要是指:mq down或者mq所在的伺服器down了,訊息不會丟失的機制。
4、技術點:可靠性、靈活的路由、集群、事務、高可用的佇列、訊息排序、問題追蹤、視覺化管理工具、外掛程式系統、社群

rabbitmq最好,activemq次之,zeromq最差。當然zeromq也可以做到,不過自己必須手動寫**實現,**量不小。尤其是可靠性中的:永續性、投遞確認、發布者證實和高可用性。

所以在可靠性和可用性上,rabbitmq是首選,雖然activemq也具備,但是它效能不及rabbitmq。

5、高併發

從實現語言來看,rabbitmq最高,原因是它的實現語言是天生具備高併發高可用的erlang語言。

總結:按照目前網路上的資料,rabbitmq、activem、zeromq三者中,綜合來看,rabbitmq是首選。下面提供一篇文章,是**使用rabbitmq的心得,可以參看一些業務場景。

第二部分:kafka和rabbitmq的比較

關於這兩種mq的比較,網上的資料並不多,最權威的的是kafka的提交者寫一篇文章。

裡面提到的要點:

1、 rabbitmq比kafka成熟,在可用性上,穩定性上,可靠性上,rabbitmq超過kafka

2、 kafka設計的初衷就是處理日誌的,可以看做是乙個日誌系統,針對性很強,所以它並沒有具備乙個成熟mq應該具備的特性

3、 kafka的效能(吞吐量、tps)比rabbitmq要強,這篇文章的作者認為,兩者在這方面沒有可比性。

1、2、

總結:兩者對比後,我仍然是選擇rabbitmq,效能其實是很強勁的,同時具備了乙個成熟的mq應該具有的特性,我們無需重新發明輪子。

好資料推薦:

1、最全最給力的kafka部落格:

2、**對rabbitmq的使用:

MQ框架的比較

mq框架非常之多,比較流行的有rabbitmq activemq zeromq kafka。這幾種mq到底應該選擇哪個?要根據自己專案的業務場景和需求。下面我列出這些mq之間的對比資料和資料。第一部分 rabbitmq,activemq,zeromq比較 1 tps比較 一 zeromq 最好,ra...

MQ框架的比較

mq框架非常之多,比較流行的有rabbitmq activemq zeromq kafka。這幾種mq到底應該選擇哪個?要根據自己專案的業務場景和需求。下面我列出這些mq之間的對比資料和資料。第一部分 rabbitmq,activemq,zeromq比較 1 tps比較 一 zeromq 最好,ra...

java 集合框架的比較

hashmap treemap hashtable 1 hashmap也用到了雜湊碼的演算法,以便快速查詢乙個鍵,treemap則是對鍵按序存放,因此它有一些擴充套件的方法,比如 firstkey lastkey 等。2 hashtable 不允許空 null 鍵 key 或值 value hash...