mq选型对比

在选择MQ之前我们要想清楚为什么要使用MQ

使用场景
比如在下单之后要给用户添加积分,通知物流发货等…如果这些操作我们全部在下单接口当中处理,那么接口性能将会非常低下.

使用MQ之后会带来什么问题

  1. 增加了系统的复杂性
  2. 要考虑消息丢失的问题
  3. 一致性,比如收到消息后要三个系统都执行完成才算流程结束,但是某个系统可能挂了,但是还是返回的成功

会带来什么好处

  1. 提高系统的相应速度
  2. 削峰填谷
  3. 增加吞吐量

各种MQ的特点

ActiveMQ
ActiveMQ:可能存在消息丢失,吞吐量万级,社区不够活跃,可能会遇到不可解决的bug,偶尔可能会丢失消息

RabbitMQ
RabbitMQ:中小型公司的选择。社区特别活跃,但想要自己维护很难,因为语言是erlang,java工程师很难读懂。吞吐量可以达到万级

RocketMQ
RocketMQ:阿里的开源项目,社区相对活跃,建议大型公司使用,即使官网不维护了,本公司也要有实力自己维护(java写的)。经过阿里双十一验证的 性能可达到十万级,并且有多种消息模式

kafka
kafka:功能比较简单,吞吐超高,如果是大数据方面的业务,用这个毫无问题,但是有可能消息重复消费,API比较少

建议
一般情况下建议中小公司使用rabbitmq,大公司或者有专门的人员研究中间件的公司可以使用rocketmq

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值