mq消息中间件面前突击

参考文章:Rocketmq原理&最佳实践

主讲:Rocketmq

1、mq优势: 流量缓冲(削峰填谷)、系统解耦、性能提升、蓄流压测

2、rocketmq主要优势:事务型消息、支持18个延迟消息级别、消息失败重发(指定次数和间隔时间)、消费端根据tag过滤

3、rocketmq和kafka对比:

  精简,面试mq必答题

指标 rocketMq kafka
应用场景 非日志可靠传输消息(订单、充值、交易) 日志消息传输(日志收集、监控、常规消息系统)
语言 java scala
持久化/部署 磁盘文件、单机/集群(高可用、分布式、主从) 磁盘文件、单机/集群(高可用、分布式、主从)
集群管理 命名空间 zookeeper
选主方式 不支持自动选主,同brokername,brokerid=0为master,其他未slave 通过zk在isr中自动选举leader
自动切换 不支持,master失效后可从slave消费,master无法恢复,异步消费可能会出现消息丢失 允许n-1个副本失效,失效后自动选举
性能 10字节,单机7w/s,3台集群,12w/s 10字节,百万每秒
复制备份 同步双写
异步复制:slave线程从master拉取
消息->leader.log<--pull--flower-->ack,log-->维护同步列表,落后太多被删除
消息投递 支持pull,push两种模式,毫秒级 毫秒级,消费端轮询时间决定

总结优劣:

太懒了,直接上图:

mq消息中间件面前突击