RocketMQ与kafka对比(18项差异)

  • 时间:
  • 浏览:0
  • 来源:彩神11选5_神彩11选5官方

卡夫卡社区更新较慢

RocketMQ的GitHub的社区有280个此人 ,公司用户登记了联系最好的土办法,QQ群超过800人。 MQ ###商业支持

卡夫卡原开发团队成立新公司,目前暂越来越相关产品看完

RocketMQ在阿里云可能商业化,目前以云服务形式供亲戚亲戚朋友商用,并向用户承诺99.99%的可靠性,一并彻底避免了用户此人 搭建MQ产品的运维比较比较复杂问题图片

心智心智成熟期期图片 图片 期期是什么是什么是什么是什么是什么 图片 度

RocketMQ支持四种 代理端消息过滤最好的土办法

淘宝内部内部结构的交易系统使用了淘宝自主研发的Notify消息里边件,使用Mysql作为消息存储媒介,可完正水平扩容,为了进一步降低成本,亲戚亲戚朋友认为存储每段能不并能进一步优化,2011年初,Linkin开源了Kafka你这个 优秀的消息里边件,淘宝里边件团队在对Kafka做过充分Review时候,Kafka无限消息堆积,高效的持久化传输时延吸引了亲戚亲戚朋友,以后一并发现你这个 消息系统主要定地处日志传输,对于使用在淘宝交易、订单、充值等场景下还有诸多内部结构不满足,为此亲戚亲戚朋友重新用Java语言编写了RocketMQ,定地处非日志的可靠消息传输(日志场景也OK),目前RocketMQ在阿里集团被广泛应用在订单,交易,充值,流计算,消息推送,日志流式避免,binglog下发等场景。

RocketMQ在阿里集团内部内部结构有大量的应用在使用,每天都产生海量的消息,以后顺利支持了多次天猫双十一海量消息考验,是数据削峰填谷的利器。

更多MQ相关内容

卡夫卡消费失败不支持重试。

开源版本RocketMQ仅支持定时级别,定时级用户可定制

阿里云MQ指定的毫秒级别的延时时间

分布式事务消息

卡夫卡不支持分布式事务消息

根据消息变量来过滤,至少子主题概念

向服务器上传一段Java代码,能不并能对消息做任意形式的过滤,甚至能不并能做Message身体的过滤拆分。

消息堆积能力

理论上Kafka要比RocketMQ的堆积能力更强,不过RocketMQ单机并能不并能支持亿级的消息堆积能力,亲戚亲戚朋友认为你这个 堆积能力可能完正能不并能满足业务需求。

Kafka的消费并行度依赖Topic配置的分区数,如分区数为10,越来越最多10台机器来并行消费(每台机器不并能开启另一个 系统线程池池),可能一台机器消费(10个系统线程池池并行消费)。即消费并行度和分区数一致。

RocketMQ消费并行度分四种 请况

顺序消费最好的土办法并行度同卡夫卡完正一致

乱序最好的土办法并行度取决于Consumer的系统线程池池数,如Topic配置10个队列,10台机器消费,每台机器80个系统线程池池,越来越并行度为800。

消息轨迹

卡夫卡不支持消息轨迹

卡夫卡支持消息顺序,以后一台代理宕机后,就会产生消息乱序

RocketMQ支持严格的消息顺序,在顺序消息场景下,一台Broker宕机后,发送消息会失败,以后无需乱序

MySQL的二进制日志下发都要严格的消息顺序

严格的消息顺序

RocketMQ支持按照时间来回溯消息,精度毫秒,类事从一天时候的某时某分某秒开使英语 重新消费消息

总结:典型业务场景如consumer做订单分析,以后可能系统线程池池逻辑可能依赖的系统地处故障等是因为,是因为今天消费的消息完正无效,都要重新从昨天零点开使英语 消费,越来越以时间为起点的消息重放功能对于业务非常有帮助。

消费并行度

这里的重试都要可靠的重试,即失败重试的消息可能Consumer宕机是因为丢失。

性能对比

卡夫卡不支持定时消息

RocketMQ支持两类定时消息

阿里云MQ支持消息轨迹

开发语言友好性

RocketMQ采用的Java语言编写

券商端消息过滤

企业级互联网架构Aliware,让您的业务能力云化:https://www.aliyun.com/aliware

RocketMQ支持根据消息标识查询消息,也支持根据消息内容查询消息(发送消息时指定另一个 消息密钥,任意字符串,类事指定为订单编号)

卡夫卡不支持消息查询

卡夫卡采用斯卡拉编写

数据可靠性

力太满,稍后再调用就会成功,如支付宝到银行扣款也是类事需求。

RocketMQ支持异步实时刷盘,同步刷盘,同步一键复制,异步一键复制

卡夫卡使用异步刷盘最好的土办法,异步一键复制/同步一键复制

总结:RocketMQ的同步刷盘在单机可靠性上比Kafka更高,无需可能操作系统Crash,是因为数据丢失。Kafka同步Replication理论上性能低于RocketMQ的同步Replication,是因为是Kafka的数据以分区为单位组织,是因为另一个 Kafka实例上会​​有几百个数据分区,RocketMQ另一个 实例上不并能另一个 数据分区,RocketMQ能不并能充分利用IO组Commit机制,批量传输数据,配置同步Replication与异步Replication相比,性能损耗约20%~80%,Kafka越来越亲自测试过,以后此人 认为理论上会低于RocketMQ。

卡夫卡不支持代理端的消息过滤

Kafka使用短轮询最好的土办法,实时性取决于轮询间隔时间,0.8时候版本支持长轮询。

RocketMQ使用长轮询,同Push最好的土办法实时性一致,消息的投递延时通常在十有几个 毫秒。

消费失败重试

卡夫卡单机写入TPS约在百万条/秒,消息大小10个字节

RocketMQ单机写入TPS单实例约10万条/秒,单机部署另一个Broker,能不并能跑到最高12万条/秒,消息大小10个字节

总结:Kafka的TPS跑到单机百万,主以后可能Producer端将多个小消息合并,批量发向Broker。

RocketMQ为哪几种越来越越来越做?

总结:消息查询对于定位消息丢失问题图片非常有帮助,类事某个订单避免失败,是消息没收到还是收到避免出错了。

消息回溯

定时消息

阿里云MQ支持分布式事务消息,未来开源版本的RocketMQ有的是计划支持分布式事务消息

消息查询

开源社区活跃度

卡夫卡理论能不并能不并能按照偏移来回溯消息

制片人通常使用的Java语言,缓存太满消息,GC是个很严重的问题图片

Producer调用发送消息接口,消息未发送到Broker,向业务返回成功,此时Producer宕机,会是因为消息丢失,业务出错

Producer通常为分布式系统,且每台机器有的是多系统线程池池发送,亲戚亲戚朋友认为线上的系统单个Producer每秒产生的数据量有限,可能上万。

缓存的功能完正能不并能由上层业务完成。

单机支持的队列数

Kafka单机超过6另一个 队列/分区,Load会地处明显的飙高问题图片,队列太满,load越高,发送消息响应时间变长。Kafka分区数无法太满的问题图片

RocketMQ单机支持最高10万个队列,负载无需地处明显变化

队列多有哪几种好处?

单机能不并能创建更多话题,可能每个主题有的是由一批队列组成

消费者的集群规模和队列数成正比,队列太满,消费类集群能不并能越大

消息投递实时性

RocketMQ消费失败支持定时重试,每次重试间隔时间顺延

总结:类事充值类应用,当前时刻调用运营商网关,充值失败,可能是对方压

卡夫卡在日志领域比较心智心智成熟期期图片 图片 期期是什么是什么是什么是什么是什么 图片