MQ的用途与对比

RabbitMQ系列第一课:RabbitMQ安装

RabbitMQ系列第二课:RabbitMQ的原理介绍

RabbitMQ系列第三课:MQ用途与产品对比

 

 

一、MQ的用途:解耦和流量肖锋

 

 

 

 

 

 二、常用MQ产品对比和选择

社区活跃度:

RabbitMQ > ActiveMQ = RocketMQ > kafka

 

消息持久化:

RabbitMQ、ActiveMQ、RocketMQ、kafka都支持持久化。ZeroMQ不支持持久化。

 

高并发:

RabbitMQ = kafka > RocketMQ > ActiveMQ。RabbitMQ高并发是基于ErLang的。ErLang本身就是针对高并发提供的一种开发脚本语言。

 

吞吐量:

RabbitMQ = kafka > RocketMQ > ActiveMQ。小型项目(并发吞吐低于万级别)使用ActiveMQ。中型项目(并发吞吐10万~100万级),可选RocketMQ、ActiveMQ。大型项目优先考虑RabbitMQ和Kafka。

 

综合技术:

RabbitMQ和kafka最好。RocketMQ次之。ActiveMQ最弱。如:可靠性、路由、集群、事务、高可用队列、消息可靠排序、持久化、可视化管理工具等。

 

RabbitMQ和Kafka选择:

建议Kafka针对日志处理。

其他使用RabbitMQ。

商业项目中,如果现有的系统架构已经使用了某一个MQ产品,且没有业务和性能上的问题,不推荐切换MQ产品。

posted @ 2017-03-02 11:23  喻聪  阅读(1902)  评论(0编辑  收藏  举报