首頁 >常見問題 >activemq和rabbitmq的差別?

activemq和rabbitmq的差別?

coldplay.xixi
coldplay.xixi原創
2020-07-02 11:40:3917297瀏覽

activemq和rabbitmq的區別是:1、activemq是老牌的消息隊列,使用Java語言編寫,對JMS支持最好,採用多線程並發;2、rabbitmq是AMQP協議的領導實現,支持多種場景,淘寶的MySQL叢集內部有使用進行通訊。

activemq和rabbitmq的差別?

activemq和rabbitmq的差異是:

1、ActiveMQ/ApolloMQ

  優點:老牌的訊息佇列,使用Java語言編寫。對JMS支援最好,採用多執行緒並發,資源消耗比較大。如果你的主語言是Java,可以重點考慮。

  缺點:由於歷史悠久,歷史包袱較多,版本更新很緩慢。集群模式需要依賴Zookeeper實作。最新架構的產品被命名為Apollo,號稱下一代ActiveMQ,目前案例較少。

2、RabbitMQ

  優點:生態豐富,使用者眾,有很多人在前面踩坑。 AMQP協議的領導實現,支援多種場景。淘寶的MySQL叢集內部有使用它進行通訊,OpenStack開源雲端平台的通訊元件,最早在金融業得到運用。

  缺點:Erlang代碼你Hold得住不? 雖然Erlang是天然集群化的,但RabbitMQ在高可用方面做起來還不是特別得心應手,別相信廣告。

補充:RocketMQ/Kafka

  優點:專為海量訊息傳遞打造,主張使用拉模式,天然的叢集、HA、負載平衡支援。話說還是那句話,適合不適合看你有沒有那麼大的量。

  缺點:所謂魚和熊掌不可兼得,放棄了一些消息中間件的靈活性,使用的場景較窄,需關注你的業務模式是否契合,否則山寨變相使用很彆扭。除此之外,RocketMQ沒有.NET下的客戶端可用。 RocketMQ身出名門,但使用者不多,生態較小,畢竟消息量能達到這種體量的公司不多,你也可以直接去買阿里雲的消息服務。 Kafka生態完善,其程式碼是用Scala語言寫成,可靠性比RocketMQ低。

以上是activemq和rabbitmq的差別?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:BIM怎麼算下一篇:BIM怎麼算