赞
踩
当业务需要系统间调用解耦时,MQ 是一个很好的方案,目前选择最多的当属Kafka和阿里的RocketMQ, 两种中间件都可以使用,都是备选方案,摆在面前,怎么选择?
一. 方法论-评估和选择备选方案的方法
按优先级选择,即架构师综合当前的业务发展情况、团队人员规模和技能、业务发展预测等因素,将质量属性按照优先级排序,首先挑选满足第一优先级的,如果方案都满足,那就再看第二优先级……以此类推。
二.RocketMQ和Kafka到底有什么区别
1、适用场景
kafka适合做日志处理
rocketmq适合处理业务
2、性能
kafka单机写入TPS号称在百万条/秒
RocketMQ大约是10万/秒
3、可靠性
kafka使用异步刷盘,异步Replication
rocketmq支持异步/同步刷盘,异步/同步Replication
结论:rocketmq所支持的同步方式提升了数据的可靠性
4、实时性
均支持pull长轮询,rocketmq的实时性更好
5、支持的队列数
kafka单机超过64个队列/分区,消息发送性能降低严重
rocketmq单机支持最高5万个队列,性能稳定
结论:长远来看,rocketmq胜出,这也是适合业务处理的原因之一
6、消息顺序性
kafka某些配置下,支持消息顺序,但是一台broker宕机后,就会产生消息乱序
rocketmq支持严格的消息顺序,在顺序消息场景下,一台broker宕机后,消
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。