导语
音讯队列 RocketMQ 版(TDMQ for RocketMQ,简称 TDMQ RocketMQ 版)在今日正式公测!TDMQ RocketMQ 是 TDMQ 系列产品中的一款分布式高可用的音讯队列服务,兼容 Apache RocketMQ 的各个组件与概念,RocketMQ 4.6 及以上版本的客户端简直零革新接入。欢送大家扫描文末二维码应用体验!
TDMQ RocketMQ 版的背景
RocketMQ 作为典型的业务解决音讯队列,次要用于解决订单,领取,积分等业务类型,对信息替换的准确性有极高的要求,它的外围架构:生产者端、服务端(NameServer 和 Broker 服务实例 )、消费者端就很好的满足了这一点。
TDMQ RocketMQ 版(Tencent Distributed Message Queue for RocketMQ)是腾讯打造的一款分布式音讯队列产品,具备强统一、高牢靠、高性能的个性。兼容开源 RocketMQ 4.6 及以上的客户端,反对程序音讯、事务音讯、集群 / 播送生产模式等原生能力,并具备计算存储拆散,灵便扩缩容的底层架构,广泛应用于各类电商、金融、游戏、政务等行业。
TDMQ RocketMQ 版产品劣势
TDMQ RocketMQ 版能较好地应答各类营销流动带来的流量冲击,十分实用于程序性以及事务性要求较高的场景,在电商交易、金融结算等畛域有着非常宽泛的利用。
- 兼容开源
兼容 Apache RocketMQ 的各个组件与概念,反对 RocketMQ 4.6 及以上版本的客户端零革新接入,同时具备计算存储拆散,灵便扩缩容的底层劣势。
- 资源隔离
为更好适配云上应用的场景,TDMQ RocketMQ 版做了多层级的资源构造,不仅基于命名空间做了虚构隔离,也在集群维度做了物理隔离。反对在命名空间维度为客户端配置权限校验,辨别不同环境的客户端,不便灵便。
- 分片存储
相比于开源版本不同的是,TDMQ RocketMQ 对于音讯数据采纳分片的形式进行长久化,不容易产生数据歪斜等问题。当因为扩容、机器故障等导致的节点新增、删除时,不会触发重均衡而导致整个集群的吞吐急剧下降。
- 丰盛的音讯类型
反对一般音讯、程序音讯、延时音讯、分布式事务音讯等多种音讯类型,反对音讯重试和死信机制,满足各类业务场景。
- 高性能
单机最高可反对上万级别的生产生产吞吐,分布式架构,无状态服务,能够横向扩容来加强整个集群的吞吐。
- 易用免运维
提供 API 拜访接口,反对开源所有语言和版本的 SDK。提供腾讯云平台整套运维服务,实时监控告警,帮忙用户疾速发现并解决问题,保障服务的可用性。
TDMQ RocketMQ 版次要能力
- 一般音讯
一般音讯是一种根底的音讯类型,由生产投递到指定 Topic 后,被订阅了该 Topic 的消费者所生产。一般音讯的 Topic 中无程序的概念,能够应用多个分区数来晋升音讯的生产和生产效率,在吞吐量微小时其性能最好。
- 程序音讯
部分程序音讯 :部分程序音讯相较于一般音讯类型,多了一个部分有程序的个性。即同一个分区下,其消费者在生产音讯的时候,严格依照生产者投递到该分区的程序进行生产。部分程序音讯在保障了肯定程序性的同时,保留了分区机制晋升性能。但部分程序音讯不能保障不同分区之间的程序。
全局程序音讯 :全局程序音讯最大的个性就在于,严格保障音讯是依照生产者投递的程序来生产的。所以其应用的是单分区来解决音讯,用户不可自定义分区数,相比前两种音讯类型,这种类型音讯的性能较低。
- 死信音讯
死信音讯是指无奈被失常生产的音讯。TDMQ 会在创立新的订阅(消费者确定了与某个 Topic 的订阅关系)时主动创立一个死信队列用于解决这种音讯。
- 重试队列
重试队列是一种为了确保音讯被失常生产而设计的队列。当某些音讯第一次被消费者生产后,没有失去失常的回应,则会进入重试队列,当重试达到肯定次数后,进行重试,投递到死信队列中。
因为理论场景中,可能会存在的一些长期短暂的问题(如网络抖动,服务重启等)导致音讯无奈及时被解决,但短暂工夫过后又恢复正常。这种场景下,重试队列的重试机制就能够很好解决此类问题。
- 死信队列
死信队列是一种非凡的音讯队列,用于集中处理无奈被失常生产的音讯的队列。当音讯在重试队列中达到肯定重试次数后仍未能被失常生产,TDMQ 会断定这条音讯在当前情况下无奈被生产,将其投递至死信队列。
理论场景中,音讯可能会因为继续一段时间的服务宕机,网络断连而无奈被生产。这种场景下,音讯不会被立即抛弃,死信队列会对这种音讯进行较为长期的长久化,用户能够在找到对应解决方案后,创立消费者订阅死信队列来实现对过后无奈解决音讯的解决。
- 延时音讯
TDMQ RocketMQ 版反对在肯定范畴内自定义时长的延时音讯,只需在每条音讯的音讯属性中减少特定的延时参数即可实现,即便您应用的是开源版 RocketMQ 客户端,也能够轻松拓展应用该能力。
- 集群生产
集群生产实用于每条音讯只须要被解决一次的场景。
- 播送生产
播送生产实用于每条音讯须要被集群下每一个消费者解决的场景。
利用场景
- 异步解耦
每笔交易订单数据须要被几十个上游业务零碎关注,包含物品批价、发货、积分、流计算剖析等,多个系统对音讯的解决逻辑不统一,单个零碎不可能去适配每一个关联业务。此时,TDMQ RocketMQ 版可实现高效的异步通信和利用解耦,确保主站业务的连续性。
- 削峰填谷
企业不定时举办的一些营销流动,新品公布上线,节日抢红包等,往往都会带来临时性的流量洪峰,这对后端的各个利用零碎考验是非常微小的。TDMQ RocketMQ 版此时便能够承当一个缓冲器的角色,将上游突增的申请集中收集,上游能够依据本人的理论解决能力来生产申请音讯。
- 程序收发
程序音讯的利用呈现在业务场景中。例如 APP 或者游戏中商品购买与发放过程中的订单创立、领取、退款等流程都是严格依照程序执行的,与先进先出(First In First Out,FIFO)原理相似,TDMQ RocketMQ 版提供一种专门应答这种情景的程序音讯性能,即保障音讯 FIFO。
产品体验入口
腾讯云音讯队列 TDMQ RocketMQ 版曾经凋谢公测,欢送大家进入官网进行体验。
进行公测的用户可移步至“腾讯云中间件”微信公众号 TDMQ RocketMQ 公测推文扫码进入 TDMQ RocketMQ 的官网用户群,群内有腾讯云音讯队列团队业余的技术人员,公测过程中遇到相干问题可间接在群里反馈,会有业余人员为您解答。