摘要:DMS任意时间定时消息能力发布。

DMS是华为云的分布式消息中间件服务。适用于解决分布式架构中的系统解耦、跨系统跨地域数据流通、分布式事务协调等难题,协助构建优雅的现代化应用架构,提供可兼容 Kafka/RabbitMQ/RocketMQ 开源系统的云服务。

DMS是一个低延迟、弹性高可靠、高吞吐、动态扩展、便捷多样的消息中间件服务。

近期,DMS服务正式上线任意时间定时消息特性,带来了灵活、精确、高性能的消息定时能力支持。

DMS rocketMQ定时消息功能流程图

为什么需要定时消息

随着互联网技术的蓬勃发展,各公司的业务场景变得越来越纷繁复杂。对于精确度、高并发、高可靠的要求也达到了一个前所未有的高度。

在这些复杂的业务场景中,定时调度场景,尽管有着十分庞大和迫切的需求,却缺乏一个“完美”的一站式解决方案。

对于定时消息需求稍低的企业会使用一些消息中间件“残血版”的开源来实现定时调度。有的企业对于定时消息的吞吐量和精确度有着非常高的要求,往往会在消息中间件的基础上自建 Serverless 定时消息中台。如:使用 Amazon SNS 服务实现的 Serverless 定时器

华为云 DMS 定时消息能力的优势

华为云 DMS 上线的定时消息能力在开源消息中间件和各大云厂商提供的定时能力中处于领先地位,能够提供毫秒级精确度、最大长达一年的定时消息能力。对于高度依赖定时消息中台的场景、华为云 DMS 定时消息能够支撑万级吞吐量。后续会上线 Serverless 能力,做到动态伸缩,同时满足低成本和高性能的诉求。

下面介绍一下华为云 DMS 定时消息的功能亮点:

  • 任意时间:能够支持 1 年内任意时间的定时消息。
  • 高精度:定时精度达到毫秒级(在无堆积情况下)。
  • 高性能:接近于普通消息的吞吐量。
  • 高可靠:不会丢失定时消息。
  • 支持取消:在定时消息未投递前支持取消。
  • 可观测性:可查询定时消息。

定时消息最佳实践

在用户发起订单的场景下,需要在一定时间(如 5 分钟)后自动关闭未支付的订单。我们需要一个定时机制按时触发订单关闭的逻辑。此时正式定时消息发挥作用的时刻:在下单时发送一条定时在 5 分钟后投递的定时消息,用它触发关闭订单的逻辑。如果用户支付了订单,可以将之前的定时消息取消。

此外,对于需要大量任务定时调度的场景,可以基于DMS定时消息能力构建一个定时调度中台。依靠DMS定时消息的高吞吐量,可以实现数十万任务并发调度。

除此之外,定时调度还能应用于更多其他场景,如定时提醒、等待重试、事件预订等等。

订单场景流程图

未来展望

华为云已经上线分布式消息服务 RocketMQ 版任意时间定时消息特性。

请点击使用。

华为云 DMS 版本正在快速演进中,后续将引入 Serverless 架构,在高可靠高可用基础上消息服务基础上,提供动态扩缩容能力,从容应对流量洪峰,在流量低谷时缩容。按需计费,动态管理企业业务成本,达到降本增效的效果。

点击关注,第一时间了解华为云新鲜技术~

一文带你认知定时消息发布RocketMQ的更多相关文章

  1. 一文带你了解 Redis 的发布与订阅的底层原理

    01.前言 发布订阅系统在我们日常的工作中经常会使用到,这种场景大部分情况我们都是使用消息队列的,常用的消息队列有 Kafka,RocketMQ,RabbitMQ,每一种消息队列都有其特性,关于 Ka ...

  2. MQ发送定时消息

    通过延时发送来发送定时消息. RocketMQ只支持固定精度时间的延时消息发送:1s 5s 10s 30s 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m 20m 30m 1h 2h 若 ...

  3. 让自己写的电子笔记连文带图全平台兼容(MarkDown图片显示兼容)

    目录 一.工具使用 语言使用:MarkDown 简介 使用原因 使用方法 软件使用:Typora 简介 环境设置搭建 1)搭建图床 2)配置PicGo 3)配置typora 4)测试 图片上传测试 平 ...

  4. 一文带你读懂zookeeper在大数据生态的应用

    一个执着于技术的公众号 一.简述 在一群动物掌管的世界中,动物没有人类聪明的思想,为了保持动物世界的生态平衡,这时,动物管理员-zookeeper诞生了. 打开Apache zookeeper的官网, ...

  5. SLAM+语音机器人DIY系列:(二)ROS入门——5.编写简单的消息发布器和订阅器

    摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人“miiboo”中的大部分程序也采用ROS进行开发,所以本文就重点对ROS ...

  6. Istio是啥?一文带你彻底了解!

    原标题:Istio是啥?一文带你彻底了解! " 如果你比较关注新兴技术的话,那么很可能在不同的地方听说过 Istio,并且知道它和 Service Mesh 有着牵扯. 这篇文章可以作为了解 ...

  7. 一文带你了解elasticsearch

    一文带你了解elasticsearch cxf2102100人评论160人阅读2019-07-02 21:31:36   elasticsearch es基本概念 es术语介绍 文档Document ...

  8. 【转帖】Istio是啥?一文带你彻底了解!

    Istio是啥?一文带你彻底了解! http://www.sohu.com/a/270131876_463994 原始位置来源: https://cizixs.com 如果你比较关注新兴技术的话,那么 ...

  9. 一文带你看清HTTP所有概念(转)

    一文带你看清HTTP所有概念   上一篇文章我们大致讲解了一下 HTTP 的基本特征和使用,大家反响很不错,那么本篇文章我们就来深究一下 HTTP 的特性.我们接着上篇文章没有说完的 HTTP 标头继 ...

随机推荐

  1. 手把手教你 Docker搭建mysql并配置远程访问

    一.使用docker部署mysql 1.在docker中搜索要安装的mysql docker search mysql (这步其实可以跳过O(∩_∩)O哈哈~) 2.拉取mysql镜像 docker ...

  2. SpringCloud 配置管理:Nacos

    目录 统一配置管理 配置热更新 配置共享 多环境配置共享 多服务配置共享 统一配置管理 将配置交给 Nacos 管理的步骤: 在 Nacos 中添加配置文件. 在微服务中引入 nacos 的 conf ...

  3. CabloyJS一站式助力微信、企业微信、钉钉开发 - 钉钉篇

    前言 现在软件开发不仅要面对前端碎片化,还要面对后端碎片化.针对前端碎片化,CabloyJS提供了pc=mobile+pad的跨端自适应方案,参见:自适应布局:pc = mobile + pad 在这 ...

  4. Java注释、标识符、关键字

    Java注释.标识符.关键字 注释 单行注释以"//" 开始:多行注释以 "/*" 开始,以"*/"结束:文档注释以 "/**&q ...

  5. Python参数传递中的 args, kwargs

    概念 真正的Python参数传递语法是*和**,其被称为 被称为打包和解包参数.*args和**kwargs只是大家默认的一种形式.也可以写成*keys和**kkeys等其他形式.二者都是为了在不知道 ...

  6. Vue是怎么渲染template内的标签内容的?

    我们在使用Vue做项目时,都会用到脚手架,相应的我们会在template写标签内容.那么你知道为什么会在template写标签吗?这当中经过了怎样的处理呢? <template> < ...

  7. 使用Vite2+TypeScript4+Vue3技术栈,如何入手开发项目

    前言 今天,我们使用Vite2.0+Vue3+TS来试玩一下,开发一个demo项目.实战 我们,打开Vite官方网站(https://cn.vitejs.dev/). Vite (法语意为 " ...

  8. 《Java编程思想》学习笔记_多态

    多态 多态指一个行为产生多种状态,针对父类类型可接收其子类类型,最终执行的状态由具体子类确定,其不同子类可呈现出不同状态.例如人[父类]都会跑步[行为],但小孩[子类]跑步.成年人[子类]跑步.运动员 ...

  9. 如何获取GC(垃圾回收器)的STW(暂停)时间?

    前言 在现代的容器化和微服务应用中,因为分布式的环境和错综复杂的调用关系,APM(Application Performance Monitoring 应用性能监控)显得尤为重要,它通过采集应用程序各 ...

  10. bat-windows系统激活

    激活命令 slmgr -ipk M7XTQ-FN8P6-TTKYV-9D4CC-J462D slmgr -skms kms.03k.org slmgr -ato slmgr -dlv 激活异常处理方法 ...