消息中间件ActiveMQ、RabbitMQ、RocketMQ、ZeroMQ、Kafka如何选型
轉載自?消息中間件ActiveMQ、RabbitMQ、RocketMQ、ZeroMQ、Kafka如何選型?
最近要為公司的消息隊列中間件進行選型,市面上相關的開源技術又非常多,如ActiveMQ、RabbitMQ、ZeroMQ、Kafka,還有阿里巴巴的RocketMQ等。
這么多技術,如何進行選型呢?
首先對于阿里的RocketMQ,因為是阿里開源的,對于國內開源的保持謹慎的態度,暫時不采取該中間件。
所以只能在ActiveMQ、RabbitMQ、ZeroMQ、Kafka中間選一款作為消息隊列中間件。
下面從幾個維度來對比下
1、社區活躍度
從目前網上的資料上看,RabbitMQ、activeMQ、ZeroMQ三者中RabbitMQ絕對是首選。
2、消息持久化
ZeroMq不支持消息持久化,ActiveMQ和RabbitMQ都支持。
3、核心技術
可靠性、靈活的路由、集群、事務、高可用的隊列、消息排序、問題追蹤、可視化管理工具、插件系統等等。
RabbitMq / Kafka最好,ActiveMQ次之,ZeroMQ最差。當然ZeroMQ也可以做到,不過自己必須手動寫代碼實現,工作量不小。尤其是可靠性中的:持久性、投遞確認、發布者證實和高可用性。
4、高并發
毋庸置疑RabbitMQ最高,因為RabbitMQ是由天生具備高并發高可用特性的erlang語言實現的。
以上對比參考來源網絡,大同小異。總結就是需要從RabbitMQ和Kafka之間選一款適合自己的。RabbitMQ和Kafka這兩款無疑也是現在市場上有得比較多的兩款消息隊列中間件,從網絡資料和面試要求也可以看得出來。
關于這兩者非常全的評測,參考:http://geek.csdn.net/news/detail/246566
如何抉擇??
總體來說,分布式消息中間件Kafka和RabbitMQ在行業認可、服務支持、可靠性、可維護性、兼容性、易用性等方面各有特色。Kafka在開源許可證、產品活躍度、性能、安全性、可擴展性等方面優于RabbitMQ,Kafka采用的許可證更寬松,活躍度更高,性能遠高于RabbitMQ,在安全性和可擴展性方面能夠提供更好的保障。Kafka僅在功能上略少于RabbitMQ,但是已經具備了主要的功能。
綜合上述所有評測結果,我們決定選擇Kafka。
總結
以上是生活随笔為你收集整理的消息中间件ActiveMQ、RabbitMQ、RocketMQ、ZeroMQ、Kafka如何选型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阿里Druid连接池监控的两个坑
- 下一篇: 树莓派 5 采用自研南桥芯片 RP1:整