RabbitMQ - [入门] 什么是MQ?MQ的分类?

总结

ActiveMQ

  • 优点:
    • 可用性比较高,单机吞吐量万级,时效毫秒ms级;
    • 可靠性高,低概率丢失数据
  • 缺点:
    • ActiveMQ 5.x 维护越来越少;
    • 高吞吐量场景较少使用

RabbitMQ(最常用)

  • 天生为金融互联网领域而生,消息0丢失
  • 优点:
    • 可用性极高,单机吞吐量万级,时效性微妙μs
    • 支持事务,也支持持久化,分发机制,容错机制等
    • 和spring是一家公司开发,spring框架支持性很好
  • 缺点:商业版收费,学习成本高

Kafka (性能最好)

  • 天生为大数据而生
  • 优点:
    • 吞吐量高,单机写入TPS(事务数/秒)百万级,时效性微妙μs级;
    • 基于tcp/ip,二进制流,最接近底层,性能极高
    • 支持持久化,分发机制
  • 缺点:
    • 但不支持事务

RocketMQ

  • 消息0丢失,支持10亿级别消息堆积。阿里,滴滴联合开发的国内版MQ
  • 优点:
    • 可用性极高,单机吞吐量十万级,时效微妙μs级;
    • 可靠性极高,可以做到消息0丢失,支持10亿级别消息堆积
  • 缺点:
    • 支持的客户端语言不多,目前是java, c++
    • 没有在MQ核心中实现JMS接口,有些系统迁移需要大量修改代码

一、什么是MQ

 

 

 

 

二、为什么要用MQ

1.流量削峰填谷

2.应用解耦

3.异步处理

 

 

 

三、MQ分类

ActiveMQ

 

 

kafka

 

 

RocketMQ

 

 

RabbitMQ

 

 

四、MQ的选择

 

 

持久化

 

分发策略

 

posted on 2021-07-04 16:33  frank_cui  阅读(365)  评论(0编辑  收藏  举报

导航

levels of contents