消息中间件优缺点及选型

1 优点

解耦:通过Pub/Sub发布订阅消息,解除系统之间的耦合性
异步:异步处理请求,实现快速响应
削峰:MySQL一般可以支持每秒2K请求,将请求写入消息中间件,慢慢拉取

2 缺点

可用性降低:请求处理依赖消息中间件
复杂的提高:需要处理重复消费、消息丢失、消息传递顺序等
一致性问题:消息消费可能失败,导致数据不一致

3 对比

特性ActiveMQRabbitMQRocketMQKafka
单机吞吐量万级万级十万级,高吞吐十万级,高吞吐,常用与实时计算、日志采集等场景
topic对吞吐量影响topic在几百/几千时,吞吐量会有较小的下降topic在几十/几百时,吞吐量会大幅度下降
时效性毫秒微妙毫秒毫秒内
可用性高,通过主从架构实现高可用高,通过主从架构实现高可用非常高,分布式架构非常高,分布式,一个数据多副本,部分宕机不会丢失数据,不会不可用
可靠性较低概率丢失数据参数优化后可0丢失参数优化后可0丢失
功能支持极其完备并发强、性能极好、延时很低较为完善、分布式、拓展性好较为简单

4 建议

ActiveMQ:没有大规模吞吐场景验证,没有活跃社区,不建议
RabbitMQ:开源、社区活跃,erlang语言开发
RocketMQ:阿里出品
Kafka:大数据领域业内标准,社区活跃
  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值