如今,消息队列已成为分布式架构中不可或缺的关键服务,为电商、物联网、游戏和教育等行业,提供了异步解耦、集成、高性能和高可靠的核心价值。
过去一年,我们发布了云消息队列 ApsaraMQ 全系列产品 Serverless 化,面向企业提供极速弹性、高性价比的云消息队列产品,助力企业降本。
云消息队列 ApsaraMQ 是涵盖 RocketMQ、Kafka、RabbitMQ、MQTT、轻量消息队列(原 MNS)的消息队列产品体系,致力于“高弹性低成本、更稳定更安全、智能化免运维”三大核心方向的发展与创新,已累计服务超 10 万家企业,覆盖 20+ 行业场景。
过去一年,云消息队列 ApsaraMQ 持续升级 Serverless 系列的架构和功能,实现更优的弹性和成本,并显著增强了稳定性和安全性以及通过智能化策略促进运维自动化等。
在 2024 年云栖大会上,阿里云智能集团产品专家刘尧全面介绍了云消息队列 ApsaraMQ Serverless 的落地成果和产品进展。此外,我们还邀请到杭州优行科技有限公司中间件消息研发负责人王智洋,分享了 ApsaraMQ for Kafka Serverless 助力曹操出行实现成本优化和效率提升的实践经验。
高弹性低成本
ApsaraMQ 持续加强 Serverless 演进
用户在使用消息队列时,常因为应对突发业务流量而导致高昂的资源冗余成本和人力运维成本。为缓解这一问题,我们的产品演进聚焦于三大核心目标:
- 瞬时弹性:快速扩展资源以应对流量变化,减少业务规模预测和运维压力,降低冗余和预留资源成本。
- 平滑缩容:尽可能平滑地缩容,以控制资源成本,降低使用弹性能力的单价。
- 性能优化:在不增加单位成本的情况下,尽可能提升产品性能,降低计费单价。
- 为实现目标 1,我们通过镜像加速、元数据批量创建、主动路由更新等核心技术,加快物理资源加入集群的速度。同时,通过智能化集群绑定管理与 Topic 平滑迁移,有效控制集群资源保持在合理水位,实现秒级万 QPS 的弹性供给,极大降低资源预留成本。
- 为实现目标 2,我们利用 gRPC 协议的 goaway 以及 remoting 协议的扩展实现 TCP 长连接的优雅下线,使缩容与升级过程对于客户无感。
- 为实现目标 3,我们充分利用 RDMA 的零拷贝、内核旁路、CPU 卸载等特性,减少网络开销,提高消息处理并发能力,从而提高性能。
更稳定更安全
在稳定性方面,ApsaraMQ 持续提升全系列产品的容灾能力,服务可用性已经达到业界领先的 4 个 9。同时,通过数据多级存储技术,数据可靠性达到最高 12 个 9。
ApsaraMQ for Kafka Serverless 系列多可用区容灾
ApsaraMQ for Kafka 基于其存算分离架构和 Serverless V3 版本,持续提升多可用区容灾能力:
- 数据更可靠:基于飞天盘古的多可用区冗余,解决开源双集群部署的数据一致性问题,确保多可用区消息强一致。
- 服务更稳定:区别于开源版本,实现 broker 无状态,支持计算层秒级恢复;优化 ISR 算法,减少计算层副本复制的网络和 CPU 资源消耗;显著降低业务高峰期的系统压力,确保吞吐平稳。
- 操作全自动:存储层利用多机挂载技术,计算层使用标准协议重试机制,实现客户端的自动可用区切换。
ApsaraMQ for RocketMQ 全球消息备份
全球消息备份功能支持在一个国家内不同地域的多个 RocketMQ 实例间同步消息。每个实例都是具备读写服务的独立实例,实例间通过异步方式同步消息数据,适用于数据汇聚、异地容灾、异地多活等场景。其优势在于:
- 低代码开发:通过全球消息备份实现实例间消息同步,降低代码开发工作量。
- 配置灵活:支持实例间单向/双向消息同步,以及自动打标消息数据,便于业务灵活选择数据处理范围。
- 跨地域低延时同步:使用阿里云事件总线 EventBridge 产品,即使在高负载下仍可实现秒级的全球同步延迟,保证稳定性和弹性。
在安全方面,我们在网络协议传输安全、用户身份认证安全、数据存储安全等方面增强了产品能力。
面向应用提供安全的消息通道
- 消息通道安全:支持各版本 TLS/SSl 加密协议,保障传输链路安全;在云端通信场景,基于 MQTT 协议接入终端设备,支持 x.509 证书认证。
- 数据访问安全:面向应用提供用户、元数据(实例/Topic/Group)的细粒度认证、鉴权和流控,以及 IP 白名单的源地址认证。
- RocketMQ ACL 2.0 权限认证体系(今年商业版和开源版均已支持):
- 用户认证和权限校验分离,认证授权组件化设计,可灵活配置适应各类场景;
- 引入新策略,仅对首次请求进行认证和授权,兼顾安全与性能;
- 提供三种灵活匹配模式(完全、前缀和通配符)以简化权限管理;
- 通过插件化扩展机制,支持认证授权策略、方式、流程的灵活扩展及用户权限存储。
- 存储安全:服务端支持基于 KMS 的 BYOK 存储加密方式,保障客户数据在服务端的隐秘与安全。
智能化免运维
ApsaraMQ Copilot for RocketMQ 消息集成链路的健康管家
我们通过综合分析日志、指标、轨迹、异常事件数据,为客户提供治理建议,帮助客户快速发现并解决问题,保障业务连续性。目前提供的自助诊断治理项主要针对日常工单处理中的常见问题:
- 告警配置:支持发送/消费限流告警配置、消息堆积延迟配置的健康检查项,告知客户如何正确配置必要的监控告警项,帮助客户及时掌握流量异常、消费及时性等运维指标。
- 资源检查:支持闲置 Topic/Group 资源的健康检查项,帮助客户快速发现不常用或可能业务异常的资源,以降低成本。
- Topic 拓扑:近期我们正在支持 Topic 拓扑能力,希望让客户更直观、清晰地查看 Topic 资源的生产者和消费者,便于业务治理与安全排查。
- 实例治理:提供灵活的实例治理规则配置,通过巡检分数和巡检项风险等级,优先处理紧急异常,提升客户自主运维效率。
“消息服务 MNS”更名为“轻量消息队列”
“消息服务 MNS”于 9 月 1 日正式更名为“轻量消息队列[1]”,旨在提供模型简单、易集成、高并发的消息队列产品,帮助开发者低成本快速构建分布式松耦合系统,高效传递数据和通知。
在轻量消息队列产品更名的同时,我们增强了其核心功能:
- 高弹性低成本:轻量消息队列支持秒级万 QPS 弹性,自适应流量负载,避免性能瓶颈;支持按量付费,无需容量评估。高弹性低成本的特性,使轻量消息队列在高并发场景下表现卓越。
- 集成:轻量消息队列支持与多个阿里云产品(事件总线、函数计算、对象存储、容器服务和物联网平台等)无缝集成,提高云产品间、应用间的消息通信效率。
- 稳定:无损发布让用户无感应用在消息服务端的重启和发布过程,自适应退避推送机制自动调节消费速率,增强对消费者业务的保护;多可用区架构在单可用区故障时将请求自动路由至其它可用区,确保服务持续可用。
ApasaraMQ for Kafka Serverless 助力曹操出行弹性降本提效
曹操出行将 Apache Kafka 应用于在线、可观测性、车联网、业务运营数据分析等场景。目前拥有 20+ 集群、峰值流量 7G/s、日均千亿条消息的业务规模,业务有明显的波峰波谷。
曹操出行通过使用 ApasaraMQ for Kafka 的全托管服务,简化了运维工作,无需投入系统级运维,并将集群的部署、升级、扩缩容、topic 迁移、leader rebalance 等高频高危操作,简化到三个操作:购买集群、升级集群、集群升配,客户无需感知扩缩容和 Topic 迁移过程。
ApsaraMQ for Kafka 提供了监控业务问题所需的关键指标,如消息生产消费速度和堆积程度、分区生产和消费倾斜等,充分满足曹操出行日常查看和定位业务问题的需求。至于 zk、broker 的负载信息,磁盘使用情况和 topic 分布信息等,则无需客户关注。
随着业务增长,曹操出行采用了 ApsaraMQ for Kafka Serverless 系列,凭借其秒级弹性扩展和按需付费,实现灵活扩缩容的同时,保证了服务的敏捷性和稳定性,节省了超过 20% 的成本。
相关链接:
[1] 轻量消息队列