RabbitMq、ActiveMq、ZeroMq、kafka之间的比较,资料汇总

MQ框架很是之多,比较流行的有RabbitMq、ActiveMq、ZeroMq、kafka。这几种MQ到底应该选择哪一个?要根据本身项目的业务场景和需求。下面我列出这些MQ之间的对比数据和资料。html

TPS比较服务器

ZeroMq 最好,RabbitMq次之, ActiveMq最差。这个结论来自于一下这篇文章。http://www.cnblogs.com/amityat/archive/2011/08/31/2160293.html 网络

3、持久化消息比较并发

      zeroMq不支持activeMqrabbitMq支持持久化消息主要是指:MQ down或者MQ所在的服务器down了,消息不会丢失的机制。框架


4、技术点:可靠性、灵活的路由、集群、事务、高可用的队列、消息排序、问题追踪、可视化管理工具、插件系统、社区
高并发

      RabbitMq最好,ActiveMq次之,ZeroMq最差。固然ZeroMq也能够作到,不过本身必须手动写代码实现,代码量不小。尤为是可靠性中的:持久性投递确认发布者证明高可用性工具

      因此在可靠性和可用性上,RabbitMQ是首选,虽然ActiveMQ也具有,可是它性能不及RabbitMQpost

 5、高并发性能

从实现语言来看,RabbitMQ最高,缘由是它的实现语言是天生具有高并发高可用的erlang语言。spa

总结:

按照目前网络上的资料,RabbitMQ、activeM、zeroMQ三者中,综合来看,RabbitMQ是首选。下面提供一篇文章,是淘宝使用RabbitMQ的心得,能够参看一些业务场景。

http://www.docin.com/p-462677246.html

第二部分:kafkaRabbitMQ的比较


关于这两种MQ的比较,网上的资料并很少,最权威的的是kafka的提交者写一篇文章。http://www.quora.com/What-are-the-differences-between-Apache-Kafka-and-RabbitMQ

里面提到的要点:

一、  RabbitMq比kafka成熟,在可用性上,稳定性上,可靠性上,RabbitMq超过kafka

二、  Kafka设计的初衷就是处理日志的,能够看作是一个日志系统,针对性很强,因此它并无具有一个成熟MQ应该具有的特性

三、  Kafka的性能(吞吐量、tps)比RabbitMq要强,这篇文章的做者认为,二者在这方面没有可比性。

这里在附上两篇文章,也是关于kafka和RabbitMq之间的比较的:

一、http://www.mrhaoting.com/?p=139

二、http://www.liaoqiqi.com/post/227


总结:

二者对比后,我仍然是选择RabbitMq,性能实际上是很强劲的,同时具有了一个成熟的MQ应该具备的特性,咱们无需从新发明轮子。


好资料推荐:

            一、最全最给力的kafka博客:http://blog.csdn.net/lizhitao/article/category/2194509

           二、淘宝对rabbitmq的使用:http://www.docin.com/p-462677246.html

相关文章
相关标签/搜索