腾讯云消息队列TDMQ又一系列产品正式开启公测,戳文查看吧!

共 3330字,需浏览 7分钟

 ·

2022-01-23 06:54


导语


消息队列 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 版公测提出建议

我们将在精选留言中随机抽送

腾讯公仔


往期

推荐


《Message deduplication 这里的去重与你想的可能不一样|Apache Pulsar 技术系列》

《倒计时3天!Apache Pulsar 社区年度盛会——Pulsar Summit Asia 重磅来袭!》

《腾讯云消息队列TDMQ RabbitMQ 版开启公测,文末有惊喜!》

《全面拥抱Go社区:PolarisMesh全功能对接gRPC-Go | PolarisMesh12月月报》

《SpringBoot应用优雅接入北极星PolarisMesh

《腾讯云CKafka重磅上线DataHub,让数据流转更简便》

《ZooKeeper系列文章:ZooKeeper 源码和实践揭秘(三)》

《Serverless可观测性的价值》

《喜报|CKafka荣获可信云消息队列服务稳定性先进级认证》

《RoP重磅发布0.2.0版本:架构全新升级,消息准确性达100%》

《ZooKeeper系列文章:ZooKeeper 源码和实践揭秘(二)》

《深入理解Rabbit MQ与AMQP协议》




扫描下方二维码关注本公众号,

了解更多微服务、消息队列的相关信息!

解锁超多鹅厂周边!

戳原文,查看更多TDMQ RocketMQ 版信息!


点个在看你最好看


浏览 78
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报