文章

MQ选型

MQ选型

MQ选型

常见的MQ

kafka

优点:吞吐量非常大、性能非常好、集群高可用缺点:会丢失数据,功能比较单一使用场景:日志分析、大数据采集

RabbitMQ

优点:消息可靠性高,功能全面缺点:吞吐量比较低,消息积累会严重影响性能。erlang语言不好定制使用场景:小规模场景

RocketMQ

优点:高吞吐、高可用、高性能,功能非常全面缺点:开源版本功能不如商业版。官方文档和周边生态还不好。客户端只支持java

多中MQ的优缺点对比

ActiveMQRabbitMQRocketMQKafkaZeroMQ 
单机吞吐量比RabbitMQ低2.6W/s11.6w/s17.3w/s29w/s 
开发语言JavaErlangJavaScala/JavaC 
主要维护者ApacheApacheApache 
成熟度成熟成熟开源版本不够成熟比较成熟 
订阅形式点对点(p2p)、广播(发布-订阅) 
持久化支持少量堆积支持少量堆积支持大量堆积支持大量堆积不支持 
顺序消息不支持不支持支持支持不支持 
性能稳定性一般较差很好 
集群方式 
管理页面一般较好一般 
本文由作者按照 CC BY 4.0 进行授权