2025年10月28日

Apache RocketMQ for AI 荣获 2025 年度 OSCAR “开源+人工智能”典型案例
2025 年 10 月 28 日,中国通信标准化协会在北京举办第九届 “OSCAR 开源产业大会”,重磅发布 2025 年度 OSCAR“开源+”典型案例评选结果。 近年来,开源技术驱动各领域飞速发展,深刻影响信息技术产业发展格局。为深化开源技术在各行业的融合应用,普及开源文化,推动形成“众研、众用、众创”的开源生态格局,中国信息通信研究院联合中国互联网协会启动 2025 年度 OSCAR“开源+”典型案例征集工作,旨在挖掘具有行业范式价值的典型实践,促进各行各业经验共享,为数字中国建设注入新动能。 其中,Apache RocketMQ for AI:AI 应用全链路异步解决方案 荣获 “开源+人工智能”专项类别典型案例。 2025 OSCAR “开源+人工智能”专项类别典型案例聚焦人工智能领域开源突破,重点征集大模型及具身智能开源、AI 数据集开放、AI 原生应用开发工具链等前沿实践。 Apache RocketMQ 正在从传统消息中间件演进为专为 AI 时代打造的消息引擎,通过 LiteTopic 轻量模型、消息优先级、定速消费等核心能力,为企业级 AI 应用的多智能体(MultiAgent)通信、大规模任务调度、长会话状态管理等场景提供全链路异步解决方案。 MultiAgent 异步通信 LiteTopic 模型凭借其百万级资源创建、自动化生命周期管理和顺序性保障,高效适配 Agent2Agent 异步通信需求,有效解决长耗时调用阻塞和 MultiAgent 应用协作扩展性难题。 AI 任务智能调度 RocketMQ 作为请求和后端算力服务的缓冲区,可平滑请求流量,最大化 AI 算力利用率;消费者限流能力保障核心 AI 算力服务稳定性;消息优先级将有限算力资源优先分配给高优先级请求任务。 分布式会话状态管理 当用户与应用服务开启会话时,RocketMQ 动态为该会话创建一个以会话 ID(SessionID)作为唯一标识的专属消息队列(LiteTopic)。所有会话相关数据,如历史记录和中间结果,均作为消息在此队列中有序传递。该架构实现了应用“无状态化”,显著简化开发复杂度、提升用户交互体验,并有效减少会话重试资源浪费。 目前,RocketMQ for AI 的核心特性已在阿里云云消息队列 RocketMQ 版产品中发布,后续将逐步贡献到开源社区。相关能力已在阿里巴巴集团内部以及阿里云大模型服务平台百炼、通义灵码等产品中经过大规模生产环境的验证,且取得显著成效,充分证明了其在高并发、复杂的 AI 场景下的成熟度与可靠性。 展望未来,我们将持续在 AI 领域进行技术迭代与创新,并积极与生态伙伴(如业务框架、AI 平台等)合作集成,共建高效、智能的 AI 应用基础设施,并逐步将经过阿里集团 AI 业务验证过的方案与特性,持续反馈到开源社区。 欢迎钉钉搜索扫码加入 RocketMQ for AI 用户交流群(群号:110085036316),与我们交流探讨~
#社区动态

2025年10月23日

2025 OSCAR丨与创新者同频!Apache RocketMQ 邀您共赴开源之约
10 月 28 日,北京将迎来开源行业的一场重磅盛会——2025 OSCAR 开源产业大会。 本次大会汇聚全球开源领域的思想领袖、技术专家、企业高管以及创新实践者,围绕开源技术的未来、产业创新及生态协同展开深度讨论。 大会将围绕人工智能开源、软件供应链安全、开源商业化等多个核心议题展开深度对话,通过顶级专家的演讲、精彩的分论坛以及技术展示,与会者将获得关于开源技术的最新洞察和行业趋势,并探索开源技术如何在数字化转型、行业创新及社会价值创造中发挥关键作用。 现在,我们诚挚邀请您参与 OSCAR 开源产业大会,与开源人相聚,与创新者同频,一起探索开源技术的发展,共同见证开源生态的繁荣。 关于 OSCAR “OSCAR 开源产业大会”是由中国通信标准化协会主办,中国信息通信研究院承办,中国信息通信研究院云计算开源产业联盟、金融行业开源技术应用社区、通信行业开源社区、科技制造开源社区、汽车行业开源社区、可信开源社区共同体、可信开源合规计划支持的开源领域顶级盛会。 大会旨在汇聚全球开源领域的专家、学者、企业代表及社区成员,共同探讨开源技术的最新趋势、治理实践,以有效应对技术风险、法律合规、供应链韧性和人才短缺等挑战,从而寻求推动中国开源生态健康、有序发展的策略,促进开源与产业深度融合,为全球开源事业的繁荣贡献中国的智慧与力量。 开源项目及商业化论坛 Apache RocketMQ 议题 AI 应用的高延迟、长周期、强状态和资源密集等特性,对底层基础设施提出了前所未有的工程挑战。 传统消息队列在应对 AI 原生(AINative)场景的动态性、状态性和资源敏感性方面已显局限,面对这一变革,ApacheRocketMQ 完成了战略性升级,从传统消息中间件演进为面向 AI 时代的消息引擎。 本次分享将介绍如何基于 Apache RocketMQ 的新特性构建异步化 MultiAgent 系统,深入探讨 Agent 间的异步通信、上下文隔离、状态恢复与任务编排机制,并通过实际案例展示如何利用 RocketMQ 实现 MultiAgent 的任务调度。 (温馨提示:大会开源集市设置了 Apache RocketMQ 展位,欢迎前来交流,参与有奖互动~) 报名链接 扫描下方二维码 或【】立即报名 大会议程
#社区动态

2025年7月14日

CommunityOverCode Asia 2025 Messaging 专题预告,Apache RocketMQ 邀您共探相关议题
CommunityOverCode 是 Apache 软件基金会(ASF)的官方全球系列大会,其前身为 ApacheCon。每年的 CommunityOverCode Asia 都吸引着来自全球各个层次的参与者、社区共同探索 "明天的技术"。2025年7月25日至27日, CommunityOverCode Asia 2025 将在北京举办,带来 Apache 项目的最新发展和新兴创新。 本次 CommunityOverCode Asia 2025 的 Messaging 专题,将给大家带来 Apache 社区建设和发展的最新资讯和前沿实践,现在就一起来看看吧! 专题介绍 伴随着云原生 Serverless、物联网、实时数据技术的规模化落地,事件驱动架构、事件流技术得以更广泛的应用,使得消息队列成为越来越重要的基础设施。今天在Apache生态中已经涌现了多个优秀的消息项目,包括:Apache Pulsar、Apache Kafka、Apache RocketMQ、Apache ActiveMQ、Apache Inlong 等等。 在这个主题中,你将了解到不同的消息系统如何基于自身的架构特点做出最优的技术演进方向,包括存算分离、Serverless、消息流一体等;也能学习各大厂商如何结合自身的行业特点、业务场景选择合适的消息技术,获得消息技术的最佳实践。 出品人 翟佳 Apache Pulsar & Apache BookKeeper PMC member,谙流科技的联合创始人兼 CEO。曾是 StreamNative 的联合创始人担任 CTO 和中国区负责人职务。硕士毕业于中国科学院计算技术研究所,之后加入 EMC,从事分布式、文件系统、流存储相关的设计和开发。主要从事开源项目 Apache BookKeeper 和 Apache Pulsar 的设计和开发工作,集中在消息和流存储方向。在分布式、存储、消息等领域有深厚的积累和经验,在相关领域先后获得中美专利 10 余项。 林清山 Apache RocketMQ 联合创始人& PMC member,阿里云消息产品线负责人,阿里云架构组中间件组长。十多年分布式中间件、消息队列研发经验,致力于消息、EDA、事件流处理、云原生等方向的探索和研究。 胡宗棠 中国移动云能力中心,中间件和大数据领域技术专家,移动云中间件/大数据团队负责人。8 年以上消息中间件内核开发和架构设计经历,从无到有参与移动云 RocketMQ、MQTT、Kafka 等多款主流消息中间件系列产品的内核架构和研发,作为技术嘉宾,曾多次参与 Apache Conf Aisa 2022/2023/2024 主论坛/分论坛、ApacheRocketMQ Summit/Meetup、云原生服务大会技术分享,开源项目实践经验丰富担任 Apache RocketMQ、Nacos、openEuler messagemiddleware sig 和 openMessaging 等开源社区的 Maintainer/Committer。信通院 2023 年《云计算开源标准突出贡献专家》,《2024 信通院 OSCAR 尖峰开源人物》,多个开源社区的开源先锋等荣誉。 议程亮点 7 月 25 日 14:00 17:15 演讲议题:Apache RocketMQ Eventbridge|您的 GenAI 为何需要 EDA? 分享时间:7 月 25 日 14:0014:30 议题介绍: 如果您身处 AI 领域,EDA 为 LLM 和 AI Agent 提供的重要帮助不容忽视。本演讲将重点探讨 EDA 为 GenAI 带来的改变: 1. 通过实时 RAG,EDA 让您的 LLM 更加智能。 2. EDA 帮助您更好地使用 LLM。 3. 借助 MCP,EDA 赋能您的 Agent。 4. 为了增强多 Agent 能力,您应该关注 EDA。 此外,本演讲还将展示 Apache RocketMQ Eventbridge 在阿里云上在这些领域的实践和探索。 演讲嘉宾: Lin Shen: Apache RocketMQ PMC Apache RocketMQ PMC成员,阿里云 EventBridge 负责人,专注于 EDA 研究。 演讲议题:Apache Pulsar 在腾讯云上的高可用性最佳实践 分享时间:7 月 25 日 14:3015:00 议题介绍:Apache Pulsar 是一个云原生的分布式消息和流式传输平台。Apache Pulsar 采用存储与计算分离的架构,支持大型集群、多租户、百万级主题、跨区域数据复制、持久化存储、分层存储、高可扩展性等企业级及金融级服务。Apache Pulsar 提供统一的消费模型,同时支持消息队列和流式传输场景。它不仅能为队列场景提供企业级的读写服务质量和强一致性保证,还能为流式传输场景提供高吞吐量和低延迟。 Apache Pulsar 已在企业关键业务中落地,拥有丰富的应用场景。目前,腾讯云也已在生产实践中大规模应用 Apache Pulsar 近 5 年。在生产实践中,腾讯云对 Apache Pulsar 进行了一系列性能优化和稳定性增强,以确保用户在不同场景下系统能够稳定高效地运行。 本次演讲我们将重点讲解腾讯云上 Apache Pulsar 在高可用性方面的最佳实践,包括 Broker 集群和 Bookkeeper 集群的高可用性、Zookeeper 集群的高可用性以及跨集群的高可用性实践,希望能够为开发者提供一些参考。 演讲嘉宾: Mingze Han|tencent 毕业于武汉大学计算机专业。腾讯云高级研发工程师。开源社区爱好者。在美团和腾讯拥有超过 8 年的消息队列相关研发和运营经验。目前主要负责腾讯云 TDMQ for Pulsar 产品的核心部分。同时,我是 Apache Pulsar Contributor 和 RoP Maintenanceer。 演讲议题:使用 Apache Pulsar 构建高可靠订阅和推送服务|挑战与最佳实践 分享时间:7 月 25 日 15:0015:30 议题介绍:分析华为云物联网基于 Apache Pulsar 构建订阅和推送服务的最佳实践。订阅和推送服务看似简单,实则涉及诸多架构决策。本演讲将深入探讨我们如何设计统一的推送服务架构,以确保海量数据分发的高可靠性和稳定性,从而帮助客户高效集成数据流,加速数字化转型。 演讲嘉宾: Zhangjian He|Huawei Cloud IoT Senior Engineer | Huawei Cloud Open Source Team Member Apache BookKeeper&Apache ServiceComb PMC member、Apache Pulsar Committer,华为云工业软件平台云服务产品编码&开源负责人、华为云OSDT成员。 演讲议题:解密 Apache Kafka 的架构创新与多场景最佳实践 分享时间:7 月 25 日 15:4516:15 议题介绍:阿里云 Kafka 基于开源 Kafka 全面升级,融合弹性计算、高性能分布式文件存储和容器服务等云原生基础设施,实现高性能存储计算分离架构。云原生 Kafka 的快速恢复机制大幅降低 RTO,读写隔离机制则充分保障服务质量。低延迟、高吞吐量、极致弹性和便捷的运维能力,使云原生 Kafka 架构足以应对众多业务场景。本次演讲在详细讲解云原生 Kafka 高性能实现原理的同时,还将从车联网、人工智能等领域展现云原生 Kafka 的多场景最佳实践。 演讲嘉宾: Fujian Zhao|Alibaba Senior Software Engineer 2020 年 6 月毕业于东南大学,2020 年 7 月加入阿里巴巴。 演讲议题:Apache Pulsar 在大规模分区环境下的指标收集实践 分享时间:7 月 25 日 16:1516:45 议题介绍:Apache Pulsar 是一个高性能消息队列,支持海量 Topic,允许用户在单个集群内创建数十万甚至数百万个分区。指标是我们在生产环境中识别和诊断问题的关键工具。可观察性的有效性直接影响故障排除的速度。 在分区数量众多的场景下,启用 Topic 级指标可能会在短时间内生成大量指标字符串,从而导致严重的内存波动,并可能导致集群不稳定。 本次演讲将分享我们在此类高分区场景下收集指标的实践经验,并探讨如何在不影响在线内存稳定性的情况下最大限度地收集指标数据,从而实现高效的问题识别和系统监控。 演讲嘉宾: Lin Lin|Huawei, SDE expert, Middleware technology director 华为 SDE 专家,中间件技术总监,曾就职于腾讯、蚂蚁金服 专注于中间件和基础设施领域,拥有超过 10 年的相关经验,致力于打造高品质的基础设施 Apache Pulsar Committer & PMC 成员 演讲议题:Apache Pulsar 在小红书公司线上场景的探索与实践 分享时间:7 月 25 日 16:4517:15 议题介绍:本次分享将比较 Pulsar 与 RocketMQ 的特性,以及 Pulsar 在小红书线上场景中的实现方式(包括特性延迟、多活、压缩等),以及企业获得的实际收益。 演讲嘉宾: 卢世吉|Apache BookKeeper PMC 小红书公司在线MQ负责人,Apache BookKeeper PMC,拥有5年MQ开发经验,致力于打造稳定可靠的基础组件。 Linlin Duan|rednote 消息队列高级研发工程师。 Xiangying Meng | Apache Pulsar PMC 小红书高级研发工程师,拥有 4 年 Apache Pulsar 内核研发与实践落地经验。曾就职于 StreamNative。专注于消息队列领域,持续探索其技术前沿与更多可能性。 7 月 26 日 14:00 17:45 演讲议题:腾讯云上的 Kafka:无缝迁移与灾难恢复 分享时间:7 月 26 日 14:0014:30 议题介绍:本次演讲将介绍如何将自建 Kafka 集群无缝迁移至腾讯云 CKafka 解决方案,无需关注迁移过程中生产消费应用的切换顺序。同时还将详细介绍腾讯云 CKafka 的故障容灾方案。 演讲嘉宾: Shilin Lu|Tencent Cloud Expert Engineer 毕业于天津大学软件工程专业,目前负责腾讯云 Kafka 内核开发与优化工作,拥有 7 年消息中间件开发运维经验。曾在腾讯、字节跳动等公司负责消息中间件研发,具备大规模集群运维经验。同时作为 Apache Kafka 和 RocketMQ 开源项目贡献者,积极参与开源社区建设。 演讲议题:构建云 MQTT 解决方案的经验教训 分享时间:7 月 26 日 14:3015:00 议题介绍:MQTT 已成为物联网 (IoT) 的事实标准,为汽车、制造、电信、石油天然气等行业的众多应用提供支持。 在腾讯云,我们开发了基于共享弹性流日志的稳健云 MQTT 解决方案。在本次演讲中,我们将分享开发过程中的关键见解和经验教训。我们将首先概述整体架构,重点介绍性能优化,并分享最佳实践。接下来,我们将深入探讨如何在共享日志之上实现 MQTT 协议——这种设计可扩展以支持其他消息传递协议。我们还将探讨动态扩展系统以支持数百万连接设备并保持高性能和可靠性的策略。最后,我们将讨论如何将存储和计算分离,并结合专用的 MQTT 负载均衡器,帮助我们降低总体拥有成本 (TCO),并灵活高效地应对流量高峰。 演讲嘉宾: Senze Zhang|Apache RocketMQ Committer Senze Zhang 是一位资深的消息队列系统工程师,在高性能消息解决方案的设计、实现和优化方面拥有丰富的经验,参与部署过 RocketMQ、Kafka、MQTT 等多个业界领先的消息队列平台。 演讲议题:使用 Apache RocketMQ 赋能无服务器消息架构 分享时间:7 月 26 日 15:0015:30 议题介绍:我们最新的研究成果已被 ACM FSE 2025 行业专题收录,Apache RocketMQ 为无服务器消息系统奠定了坚实的基础,解决了传统中间件在可扩展性、成本和元数据方面的挑战。通过解耦存储和计算,Apache RocketMQ 实现了独立的资源扩展,这对于不可预测的云工作负载至关重要。其弹性写入分区消除了单队列吞吐量限制,而轻量级消息队列则以最小的冷启动延迟支持数百万个队列。 我们通过基于 RocketMQ 的 RabbitMQ 实现证明了这一点,该实现在克服 RabbitMQ 扩展限制的同时,保留了完整的协议兼容性。借助 RocketMQ 的架构,我们实现了无限的水平扩展能力,并将元数据管理效率提高了 1000% 以上。该无服务器解决方案已在阿里云上商业化运营。我们的经验表明,RocketMQ 能够将传统消息系统转型为云原生服务,为面向未来的无服务器架构提供了蓝图。 演讲嘉宾: SJuntao Ji|Senior Development Engineer (Alibaba Cloud Computing) 阿里云计算高级中间件研发工程师,负责 RocketMQ 和 RabbitMQ 的功能开发。Apache RocketMQ 开源社区贡献者。在 CCFA 会议或期刊(ASE 23'、FM 24'、FSE 25' 等)发表多篇顶级论文。 演讲议题:基于 Commitlog 和 RocksDB 的 RocketMQ 存储引擎 分享时间:7 月 26 日 15:4516:15 议题介绍:基于 Commitlog 和 RocksDB 的 RocketMQ 存储引擎 延迟消息、事务消息、POP 和索引是 RocketMQ 的核心功能。这些功能涉及内存中的多种状态转换,并且基于文件系统实现。现有实现面临以下问题: 1、基于队列的实现会导致更多的合并操作(例如,POP 消费结果合并、事务消息与 OP 消息合并),从而导致工作流复杂、效率低下且可扩展性差。 2、TimerWheel、TimerLog、Revive 和 Index 文件需要额外的存储空间。 3、内存中过多的中间状态会导致性能问题,例如在 POP 消费过程中,CK、ACK 和 CKMock 等临时对象会对堆内存造成巨大的 GC 压力。 4、大量的磁盘文件和中间状态使分层存储和弹性伸缩变得复杂。 RocksDB 是 Facebook 开发的一款高性能嵌入式键值存储引擎,广泛应用于数据库、日志系统和分布式存储。RocksDB 与 Commitlog 和 RocksDB 统一存储引擎的关键在于将消息数据分离成两部分,在文件系统上 Commitlog 的同时迁移 RocksDB 中的所有索引模型。这种方法具有显著的优势: 1、利用 RocksDB 的快速查找功能减少数据处理中的协调/同步,从而简化复杂性。例如,RocksDB 的键值存储 CRUD 操作可以取代 POP 消费中原有的双队列合并过程。 2、重构存储模型,减少存储数据量,提高存储效率。例如,RocksDB 的索引功能可以完全替代现有的索引功能,无需再保存任何索引文件。 3、使用 RocksDB 作为统一的数据迁移接口,简化了分层存储和弹性伸缩的流程,这比目前的实现方式要早得多。 这种存储架构显著优化了这些核心特性。重构不仅简化了代码库、降低了维护成本,还为 RocketMQ 提供了强大而灵活的解决方案,以应对不断增长的业务需求和复杂的存储环境。 演讲嘉宾: Zhou Li|aliyun 阿里云消息专家,负责阿里巴巴核心消息中间件。 演讲议题:RocketMQ 5.0 中的虚拟队列:增强对 Remoting 协议客户端的向后兼容性 分享时间:7 月 26 日 16:1516:45 议题介绍:Apache RocketMQ 是一个以低延迟、高性能和高可靠性著称的分布式消息与流处理平台。最新发布的 5.0 版本带来了两项重大进步: 1、实现了存储与计算的解耦,进一步提升了系统的可扩展性和云原生适配能力。 2、引入了 POP 消费模式,将负载均衡逻辑从客户端迁移到了 Broker 端。 为适应这些新特性,社区推出了全新的基于 gRPC 协议的客户端。然而,现有通过 Remoting 协议客户端接入 RocketMQ 的用户,若不更新代码和替换客户端 SDK,将无法享受到 5.0 的这些创新能力。为增强对 Remoting 协议客户端的向后兼容性,我们在 RocketMQ 5.0 中提出了虚拟队列方案,并已在腾讯云的实际应用中得到了充分验证。 演讲嘉宾: Shengzhong Liu|Tencent 自 2019 年从东南大学毕业以来,一直在腾讯云担任软件开发工程师,近年来专注于消息队列技术的相关工作。 演讲议题:小米 RocketMQMQTT 最佳实践:提升质量和成本效率之旅 分享时间:7 月 26 日 16:4517:15 议题介绍:本次演讲将介绍小米 MQTT 系统架构的演变,重点介绍其在稳定性、性能和成本优化方面的进步。关键举措包括管理海量主题、确保消息顺序、灾难恢复机制、分层存储解决方案、字典压缩技术、数据集成、容器化等等。 演讲嘉宾: Fan Wang|Xiaomi Message Queue Team Leader, Apache RocketMQ Committer 2018 年加入小米,专注于消息和存储系统,负责小米 MQ、HBase、ElasticSearch 等平台。 点击即可参与报名!
#社区动态

2025年7月3日

Apache RocketMQ 创新论文入选顶会 ACM FSE 2025
近日,由阿里云消息团队发表的 Apache RocketMQ 创新论文被 CCFA 类软件工程顶级会议 FSE 2025 Industry Track 录用。 ACM FSE(The ACM International Conference on the Foundations of Software Engineering)是享有盛誉的国际学术会议,被《中国计算机学会推荐国际学术会议和期刊目录》列为 CCFA 类软件工程顶级会议。该会议汇聚学术界与工业界专家,聚焦软件工程前沿研究与实践应用,其发表论文以卓越的创新性、重要性和影响力著称,对软件工程领域的发展与创新起到关键推动作用。 此次被录用的论文为《Designing for Scalability: Building a Universal Serverless Messaging Architecture with Apache RocketMQ》。该研究基于 Apache RocketMQ 构建 Serverless 消息系统,研发适配多种主流消息协议(如 RabbitMQ、MQTT 和 Kafka)的代理层,成功解决了传统中间件在可伸缩性、成本及元数据管理等方面的难题。阿里云消息团队据此实现了云消息队列 ApsaraMQ 全系列产品 Serverless 化,让用户专注于业务开发,进一步提效降本。 创新亮点 消息中间件在数字化与智能化时代发挥着至关重要的作用,它提供异步解耦、集成、高性能高可靠等核心价值,支撑分布式系统间的高效通信,优化整体应用性能和资源利用率。从用户视角看,现代消息中间件应以无服务器(Serverless)架构运行,使用户仅需关注消息的发布与消费行为,同时应具备强大的弹性扩展能力以应对业务负载的动态变化。 阿里云基于 Apache RocketMQ 的架构优势,构建了 Serverless 消息系统范式,并提供包括 RabbitMQ、MQTT 和 Kafka 在内的主流消息中间件解决方案。RocketMQ 通过解耦存储和计算,实现计算与存储资源的独立弹性扩展,适用于云环境的不可预测工作负载。此外,RocketMQ 原生支持百万级元数据管理,兼具冷启动、高可用、无限横向扩展等特性,有效满足智能化时代对消息系统在弹性、性能与可靠性等方面的综合需求。 论文中展示了依托 RocketMQ 存储引擎实现 RabbitMQ 无限水平扩展,在兼容完整协议的基础上突破了 RabbitMQ 原有的扩展限制,元数据管理效率、最大吞吐量、堆积能力等相比开源均可以提升超过1000%。阿里云消息团队基于此 Serverless 消息系统范式,实现了云消息队列 ApsaraMQ 全系列产品 Serverless 化,让用户专注于业务开发,进一步提效降本。实践表明,该架构范式能够将传统消息系统转变为高弹性、低成本、高性能的云原生消息服务,为无服务器架构应用提供强大支撑。 附论文信息 录用论文题目:《Designing for Scalability: Building a Universal Serverless Messaging Architecture with Apache RocketMQ》 作者:季俊涛,金融通,傅玉宝,林清山 论文概述:消息中间件在现代世界中发挥着至关重要的作用,它促进了分布式系统之间的无缝通信,并提升了整体应用性能。从用户的角度来看,消息中间件应以无服务器的方式运行,专注于消息的发布和消费。随着业务吞吐量的增加,任何消息中间件都必须具备强大的横向扩展能力。为此,阿里云基于 Apache RocketMQ 实现了无服务器范式,并在这种无服务器形式下开发了多个主流的消息中间件解决方案,如 RabbitMQ、MQTT 和 Kafka。以 RabbitMQ 为案例进行研究,RabbitMQ 具有难以扩展的架构,而我们基于 RocketMQ 的 RabbitMQ 与所有开源客户端兼容,并为单个队列提供无限的吞吐量限制。此外,消息元数据管理能力、削峰填谷能力比开源 RabbitMQ 高出超过 1000%。基于 Apache RocketMQ 的消息中间件无服务器架构预计将在阿里云中支持稳定的商业应用,并有潜力在未来作为大规模消息系统集群的可靠解决方案。
#社区动态

2025年6月16日

EventBridge 构建智能化时代的企业级云上事件枢纽
产品演进历程:在技术浪潮中的成长之路 早在 2018 年,Gartner 评估报告便将事件驱动模型(EventDriven Model)列为十大战略技术趋势之一,指出事件驱动架构(EDA,Eventdriven Architectures)将成为微服务架构未来的演进方向。 随着云原生与 Serverless 技术的迅猛发展,2020 年,阿里云重磅发布事件总线 EventBridge,构建了云原生环境下的统一事件枢纽。事件总线 EventBridge 支持阿里云服务、自定义应用、SaaS 应用以标准化、中心化的方式接入,并能够以标准化的 CloudEvents 1.0 协议在这些应用之间路由事件,帮助企业轻松构建松耦合、分布式的事件集成驱动架构。 自 6 月 3 日起,阿里云事件总线 EventBridge 正式商业化。历经五年迭代升级,事件总线 EventBridge 在产品功能和用户体验方面不断优化,积累了丰富的规模化生产实践经验。在数据智能化时代,事件总线 EventBridge 持续深耕企业云上事件集成,适用于各种规模和行业的事件集成场景。通过 Event 桥接各个系统,满足 AI 和企业集成等领域的各种数据集成需求,为企业提供便捷且创新的数据集成解决方案。 产品核心特性:构建企业级事件中枢的关键 从诞生到商业化,事件总线 EventBridge 不断优化产品核心特性,致力于定义企业级事件集成标准,为企业构建云上事件枢纽提供坚实可靠的支撑和保障。 + 稳定与安全:依托海量数据传输及运维经验,提供高稳定性且安全合规的企业集成服务; + 性能与成本:提供高性能且性价比高的企业集成方案,显著降低用户数据集成成本; + 开放与集成:提供丰富的跨产品、跨平台连接能力,促进云产品、应用程序、SaaS 服务相互集成; + 统一事件枢纽:统一事件界面,定义事件标准,打破云产品事件孤岛; + 事件驱动引擎:海量事件源,毫秒级触发能力,加速 EDA/Serverless 架构升级; + 流式事件通道:事件流提供轻量、实时、端到端的流式数据处理,对源端产生的事件进行实时抽取、转换和分析并加载至目标端。 多元应用场景:覆盖各类企业事件集成场景 EDA 事件驱动场景 事件总线 EventBridge 通过事件连接应用程序、云服务和 Serverless 服务,构建事件驱动架构(EDA,Eventdriven Architectures),实现应用与应用、应用与云服务之间的高效连接。 流式 ETL 场景 在企业集成场景中,事件总线 EventBridge 可以作为流式数据管道,提供基础的过滤与转换功能,支持不同数据仓库、数据处理程序、数据分析与处理系统之间的数据同步和跨地域备份,连接不同系统与服务。 AI 数据集成场景 事件总线 EventBridge 提供非结构化数据到结构化数据的链路集成,可处理多种数据源,如关系型数据库、API 数据、文件、ODPS 等,并支持将数据向量化后存储至向量数据库或其他数仓,同时支持数据清洗、转换和规范化。为 RAG 和模型数据准备等场景,提供一站式数据集成服务。 统一事件通知服务 事件总线 EventBridge 提供丰富的云产品事件源与事件的全生命周期管理工具,用户可以直接监听云产品产生的数据,并上报至监控和通知等下游服务,实现高效的事件管理和响应。 商用计费体系:计费模式灵活匹配企业需求 事件总线 EventBridge 已于 6 月 3 日起正式商业化,分为事件总线、事件流两类资源进行计费,计费模式如下: 计费组成说明 事件总线 EventBridge 各资源的计费组成信息请参见下图。 事件总线计费说明 事件总线【1】分为云服务专用事件总线和自定义事件总线。 + 云服务专用事件总线:是系统自动创建用于接收阿里云官方事件源的事件且不可修改的内置事件总线。 + 自定义事件总线:需要你自行创建并管理的事件总线。 事件源单价 | 计费项 | 计费单价 | | | | | 云服务专用总线事件发布 | 免费 | | 自定义总线事件发布 | 5.64元/百万次事件发布 | 每个 64KB 大小的事件计为 1 个事件。 事件目标单价 | 计费项 | 计费单价 | | | | | 阿里云服务目标事件推送/通知 | 免费 | | 自定义目标事件推送 | 1.29元/百万次事件推送 | 每个 64KB 大小的事件计为 1 个事件。 事件流计费说明 事件流【2】是端到端的流式事件通道,适用于端到端的流式数据处理场景。事件流属于收费服务,并支持按事件量计费和按 CU 额度计费,这两种计费【3】方式你只需二选一即可。 按事件量计费 | 计费项 | 计费单价 | | | | | 事件量 | 2.8元/百万条 | | 空置资源占用费 | 1元/天 | + 事件量:事件流拉取上游数据源的事件总量。每个 64KB 大小的事件计为 1 个事件。计算公式:事件量(向上取整)=单个事件大小/64KB。例如:批量投递了 300KB 的单个事件,则按照 5 个事件进行计费。若事件发生重试,则按照配置的重试规则每次重试计为 1 个事件。 + 空置资源占用量:若单个事件流在一个月内没有任何数据流入将会按照计费标准收取空置资源占用费,空置资源占用费将在有数据流入或者删除该事件流后取消计费。 按 CU 配额计费 名词介绍 CU 配额: CU(Capacity Unit)是事件总线任务的容量单位。若采用 CU 规格计费,则每个任务必须至少分配 1CU 作为最小配额。亦可在任务创建时指定允许弹性的最大 CU 规格和最小 CU 规格。 计费项和计费单价 + 计费项:CU 配额 + 计费单价:0.24元/小时/CU 说明 单个 CU 可支持的条件(条件为或): 1. 最大支持每秒事件量(EPS)5000Event/s(实际情况受限于链路上下游性能)。 2. 最大支持的峰值吞吐量(BPS)50MB/s 的容量。 为了方便你快速评估费用,事件总线(EventBridge)提供了价格计算器:事件总线(EventBridge)价格计算器【4】。 如果你在使用事件总线 EventBridge 的过程中有任何反馈或疑问,欢迎加入钉钉用户群(钉钉群号:31481771)与阿里云研发团队即时沟通。 【1】事件总线 https://help.aliyun.com/zh/eventbridge/userguide/eventbusoverview 【2】事件流 https://help.aliyun.com/zh/eventbridge/userguide/eventstreamoverview 【3】计费 https://help.aliyun.com/zh/eventbridge/productoverview/billingofeventstreams 【4】事件总线(EventBridge)价格计算器 https://eventbridge.console.aliyun.com/calculator
#社区动态

2025年6月11日

Apache RocketMQ + “太乙” = 开源贡献新体验
Apache RocketMQ 是 Apache 基金会托管的顶级项目,自 2012 年诞生于阿里巴巴,服务于淘宝等核心交易系统,历经多次双十一万亿级数据洪峰稳定性验证,至今已有十余年发展历程。RocketMQ 致力于构建低延迟、高并发、高可用、高可靠的分布式“消息、事件、流”统一处理平台,覆盖云边端⼀体化数据处理场景,帮助企业和开发者在智能化时代,轻松构建事件驱动架构的云原生应用。 Apache RocketMQ 的茁壮成长离不开全球 800 多位开发者的积极参与和贡献。如今,Apache RocketMQ 开源社区将携手"太乙"平台,共同开启一场开源贡献竞赛,为广大开发者提供一个全新的体验平台和参与机会!新一轮开源竞赛于 6 月 1 日正式启动。 关于“太乙”平台 "太乙"是特色化示范性软件学院年度质量检测指标开源数据的官方唯一指定获取平台,服务于示范性软件学院联盟( https://www.pses.com.cn/home/publicresource )204 家高校成员单位。 “太乙”平台( https://www.taiyi.top/ )是浙江大学软件学院自主研发的开源能力评价与服务系统,提供开发者开源贡献价值评价与开源竞赛等服务,旨在精准衡量开发者的贡献价值、影响力和技能水平。 平台通过系统化分析开发者在开源社区中的各类可量化贡献,构建起定性与定量相结合的全维度评价体系,对开发者进行全面刻画。 + 在定性评价方面,平台从影响力、贡献度、语言能力、项目经验和活跃度五个维度对开发者进行宏观审视; + 在定量评价方面,则依据项目重要性、贡献类型、内容关键性、贡献体量及复杂度等指标,并结合程序语言分析与自然语言处理等技术,提供精准、客观、自动化的价值评估,充分认可每一份贡献。 “太乙”平台联合各大公司与知名社区,全年不间断、滚动式发布开源竞赛。基于科学的价值自动化评价系统,参赛者可根据贡献价值大小等比例获得奖金,甚至获得头部企业的实习与就业机会,太乙系统能够支持低成本、高效率的长周期开源竞赛组织,激发开发者的积极性,推动中国开源生态的发展。 Apache RocketMQ x “太乙” 开源竞赛 __ 本轮竞赛于 2025 年 6 月 1 日 启动,竞赛链接: https://www.taiyi.top/competitiondetails?id=6836d00651c0e4a2bd63770c 我们联合太乙平台,为 Apache RocketMQ 的开发者和学习者提供了一站式引导服务。我们不仅提供了详尽的原理介绍、文档说明以及部署教程,还特别设计了一键式自动搭建体验环境,帮助开发者轻松体验 Apache RocketMQ 的部署流程和消息收发过程。 为了进一步促进开发者融入社区生态,我们还精心准备了一份贡献指南:涵盖了社区生态、入门指引、issue 推荐等等。相信通过参与本次开源竞赛,开发者们能够快速掌握如何在 Apache RocketMQ 开源社区作出贡献,顺利成为一名 Contributor!欢迎开发者们踊跃参与~ 你可以获得的 参与 Apache RocketMQ x “太乙”开源竞赛,你将获得宝贵的开源社区贡献经历、可量化的贡献奖金以及成为 Apache 顶级社区 Contributor/Committer/PMC 的成长机会,这些都将为你未来的职业发展提供强大助力! 为确保开源竞赛奖金分配机制的公平性与合理性,兼顾开发者与项目发起方的共同利益,“太乙”平台采用了一套科学的公式来计算可分配的奖金额度。随着开发者提交贡献的增加,可分配的奖金总额将随之上涨,最高达 5000 元。 此次竞赛活动将进一步促进 Apache RocketMQ 技术生态的繁荣与发展,为参与者创造更多学习、交流与成长的机会。我们诚邀每一位热衷于分布式消息处理技术探索与实践的开发者加入,在实践中不断提升自我,共同推动 Apache RocketMQ 的技术进步与社区发展。 让我们在开源的道路上,携手共进,创造不凡! 点击:了解太乙开源服务系统更多详情
#社区动态

2025年5月12日

开源之夏 2025|Apache RocketMQ 社区项目期待你的参与!
开源之夏 2025 开源之夏是由中国科学院软件研究所“开源软件供应链点亮计划”发起并长期支持的一项暑期开源活动,旨在鼓励在校学生积极参与开源软件的开发维护,培养和发掘更多优秀的开发者,促进优秀开源软件社区的蓬勃发展,助力开源软件供应链建设。开源之夏于 2020 年正式发起,开源之夏 2025 是第六届活动。 活动联合各大开源社区,针对重要开源软件的开发与维护提供项目开发任务,并向全球高校学生开放报名。学生可自主选择感兴趣的项目进行申请,中选后在项目开发者(社区导师)的指导下进行开发。 通过参与活动,不仅可以结识开源界小伙伴和技术大牛,获得社区导师的专业指导,与开源项目开发者深度交流,还能获得丰富的项目实践经验,提升项目开发技能,为学习深造提供助力,为职业发展积攒履历。 此外,根据项目的难易程度和完成情况,结项者将获取开源之夏活动劳务报酬和结项证书。项目难度分为基础和进阶两档,对应结项劳务报酬分别为:税前 8000 元人民币和税前 12000 元人民币。 Apache RocketMQ 社区项目 Apache RocketMQ 于 2012 年诞生于阿里巴巴核心电商系统,于 2016 年捐赠给 Apache 基金会,于 2017 年成为 Apache 顶级项目。现 Apache RocketMQ 致力于构建低延迟、低成本、高可用的分布式“消息、事件、流”统一处理平台,覆盖“云、边、端”⼀体化数据处理场景,帮助企业和开发者在智能化时代,轻松构建事件驱动架构的云原生 / AI 原生应用。 本次开源之夏共提供 2 个课题项目: 1. RocketMQ 主备副本利用系统内置 Topic 完成元数据增量同步,项目社区导师:金融通 2. RocketMQ 路由反向更新机制,项目社区导师:ShannonDing 如何参与项目? 欢迎扫描上方海报二维码,查看 Apache RocketMQ 社区项目详情,其中有项目导师的姓名与联系邮箱,可通过邮件与导师进行沟通,并准备项目申请材料、提交项目申请,每位同学可以申请一个项目。 以下是开源之夏的活动流程,更多参与指南请查看
#社区动态

2024年12月20日

Apache RocketMQ 荣获 2024 开源创新榜单“年度开源项目”
近日,以“新纪天工、开物焕彩——致敬开源的力量”为活动主题的“重大科技成就发布会(首场)”在国家科技传播中心成功举办,并隆重揭晓了 2024 开源创新榜单,旨在致敬中国开源力量,传播推广开源科技成就,营造中国开源创新生态。 2024 年开源创新榜单由中国科协科学技术传播中心、中国计算机学会、中国通信学会、中国科学院软件研究所共同主办,中国开发者社区承办,以王怀民院士为首组建评审委员会,进行研讨评审,面向中国开源行业领域,遴选具有创新性、贡献度和影响力的开源项目、社区、应用场景与开源事件。 在评审出的 10 个年度开源项目中,Apache RocketMQ 成功入选。 Apache RocketMQ 社区近况 Apache RocketMQ 创新论文连续被软件工程顶级会议录用 (1)2024 年 9 月,由阿里云消息队列团队发表的关于 RocketMQ 锁性能优化论文《Beyond the Bottleneck: Enhancing HighConcurrency Systems with Lock Tuning》被 CCFA 类软件工程顶级会议 FM 2024 录用。 高并发系统常常面临性能瓶颈,主要是由于线程间激烈竞争锁导致的等待和上下文切换。作为一家云计算公司,我们非常重视性能的最大化。为此,我们对轻量级自旋锁进行了改进,并提出了一种简洁的参数微调策略,能够在最低风险条件下突破系统性能瓶颈。该策略在高吞吐量消息队列系统 Apache RocketMQ 中得到了验证,实现了 X86 CPU 性能提升 37.58% 和 ARM CPU 性能提升 32.82%。此外,我们还确认了这种方法在不同代码版本和 IO 刷新策略下的一致有效性,显示出其在实际应用中的广泛适用性。这项工作不仅为解决高并发系统的性能问题提供了实用工具,还突显了形式化技术在工程问题解决中的实际价值。 (2)2023 年 9 月,由阿里云消息队列团队发表的关于 RocketMQ 高可用范式设计论文《RocketHA: A Logbased Storage High Availability Paradigm for Messaging and Streaming Scenarios》被软件工程 CCFA 类顶级会议 ASE 2023 录用。 该论文详细探讨了 RocketMQ 在其发展历程中所蕴含的高可用性设计理念,凝聚了团队在行业应用中积累的宝贵经验。为了应对分布式系统中常见的故障,如崩溃和网络分区,RocketHA 提出了一种基于日志存储的高可用性设计框架。该框架由六个基本组件构成,旨在实现系统在面对各种故障时的自动集群恢复。具体而言,RocketHA 通过模块化设计,实现了消息、事件及流场景的高可用性,确保系统能够在发生意外故障时迅速且有效地恢复。此外,该设计还优先考虑了高吞吐量与数据丢失防护,以保障系统在进行大规模数据处理时的稳定性和可靠性。评估结果表明,RocketMQ 在多种负载和故障场景下都表现出卓越的高可用性和快速恢复能力。本文提出的 RocketHA 的设计理念可为其他基于日志存储的系统提供参考和借鉴,推动相关领域的研究与开发。 GSoC(Google Summer of Code) 2024 在谷歌主办的 GSoC 2024 中,Apache RocketMQ 开源社区共提报通过两个选题: 1. RocketMQ Dashboard Supports RocketMQ 5.0 Architecture and Enhances Usability:该题目旨在强化 RocketMQ 的开源控制台能力。 2. Optimizing Lock Mechanisms in Apache RocketMQ:该题目旨在优化锁行为,优化 RocketMQ 的性能以及资源占用。 两个题目均成功结项,第一个题目为 Apache RocketMQ 发布了 rocketmqdashboard 2.0.0,自此RocketMQ Dashboard 支持 Apache RocketMQ 5.0 。第二个题目创新性地提出了 ABS 锁,为轻量化的自旋锁提供了一套退避策略,从而实现低成本、有限制的锁自旋行为,同时适应不同强度的资源争抢情况 Apache RocketMQ 社区 5.3.0、5.3.1 版本发布 Apache RocketMQ 社区近期发布了 5.3.0 和 5.3.1 两个版本,两个版本主要修复现有的 bug 并提升系统的整体稳定性和性能。值得一提的是,Apache RocketMQ 5.3.0 引入了 Apache RocketMQ ACL 2.0 支持,为用户带来了更加灵活和安全的访问控制机制。这些改进和新增功能将显著提升 Apache RocketMQ 在生产环境中的稳定性和安全性,进一步满足用户的业务需求。 Apache RocketMQ 中文社区全新升级 2024 年 7 月,Apache RocketMQ 中文社区(https://rocketmq.io)全新升级,致力于为每一位热衷于 RocketMQ 技术探索与实践的开发者,打造一个集时效性、全面性、深度于一体的一站式学习平台。 最全最新资讯: Apache RocketMQ 中文社区提供从基础到深入的全面学习资料,涵盖原理介绍、架构解读、源码分析等基础知识,高级性能使用、技术前沿探索、场景最佳实践等博客文章,用户反馈的真实答疑样例等,并及时更新版本发布、架构演进和功能迭代等社区动态,以及社区相关活动和会议信息,为您提供更多学习和交流的机会。 智能专家答疑: Apache RocketMQ 中文社区基于 Apache RocketMQ 领域专业知识库,并结合先进的大模型技术进行优化,为您提供 AI 问答助手,作为您的智能学习伴侣。通过自然语言问答,让您的疑问得到迅速解答,使您的学习之旅更加轻松有趣。 关于 Apache RocketMQ RocketMQ 致力于构建低延迟、高并发、高可用、高可靠的分布式“消息、事件、流”统一处理平台,覆盖云边端⼀体化数据处理场景,帮助企业和开发者在智能化时代,轻松构建事件驱动架构的云原生应用。 RocketMQ 自 2012 年诞生于阿里巴巴集团的核心交易链路,至今已经历十余年“双十一”的万亿级数据洪峰验证。2015 年,阿里云面向企业提供商业化的消息队列服务,其中包括云消息队列 RocketMQ 版。2016 年,阿里巴巴向 Apache 软件基金会捐赠了 RocketMQ 项目,RocketMQ 进入 Apache 孵化器。2017 年,Apache RocketMQ 成为 Apache 顶级项目,在开源消息中间件领域占据领导地位。2022 年,Apache RocketMQ 5.0 正式发布,全面拥抱云原生架构、超融合架构,进一步拓展事件驱动、物联网等场景。
#社区动态

2023年1月5日

Apache RocketMQ 斩获 InfoQ 2022 年度十大开源新锐项目
以“深入数字经济·洞见技术价值”为主题的【InfoQ 2022 中国技术力量年终榜单】正式公布获奖名单。其中,Apache RocketMQ以其卓越的易用性、社区活跃性、成熟度、产品优越性、代码健康度等荣获【2022 年度十大开源新锐项目】。 作为主流的分布式消息中间件,RocketMQ于 2012 年开源,并在 2017 年正式成为 Apache 顶级项目,持续迸发出旺盛的生命力。 伴随着云原生时代的到来以及实时计算的兴起, 生于云、长于云的 RocketMQ 5.0 应运而生,全新升级为云原生消息、事件、流融合处理平台,帮助用户更容易地构建下一代事件驱动和流处理应用。RocketMQ 5.0 专注于消息基础架构的云原生化演进,聚焦在消息领域的后处理场景,支持消息的流式处理和轻计算,帮助用户实现消息的就近计算和分析,并全面拥抱 Serverless 和 EDA。 在技术迎来重要革新的同时,回顾 Apache RocketMQ 社区这些年的成长历程。目前,全球 Apache RocketMQ Contributors  700+,促进整个社区长期和健康发展。同时,为了帮助社区开发者更好地找到感兴趣的技术方向,快速参与到社区并推动相关特性优化的快速演进,RocketMQ 还成立内核、批处理、Connect、Streaming、多语言客户端、RocketMQFlink、Operator、Exporter 等不同兴趣小组。 为更好聚集本地开发者,我们在北京、深圳、苏州等城市相继成立当地社区,定期举行线下活动,共同讨论 RocketMQ 相关的落地实践与新特性需求,大量创新从社区的各类活动中产生并且落地。除此之外,RocketMQ 还非常重视社区间的合作,先后与 Apache DolphinScheduler,Apache Hudi 等社区组织了多次联合 Meetup,在打造 RocketMQ 上下游生态的同时,也为不同社区开发者近距离讨论提供了平台。 在社区成员以及众多的开发者共同推动下,全球超过数万家企业在使用 Apache RocketMQ,这其中不仅有字节跳动、快手、小米、滴滴、同城艺龙等互联网头部企业,还有众多银行、券商、保险,基金公司等金融公司。经过多年发展,RocketMQ 已成为微服务领域业务消息首选。 本次获奖离不开全体社区成员的共同努力,是全体社区成员的共同荣誉!社区将再接再厉,不忘初心,持续促进  Apache RocketMQ 项目和社区的持续发展。
#社区动态

2022年12月27日

RocketMQ 多语言 SDK 开源贡献召集令
目前 Apache RocketMQ 5.0 SDK [1]正在社区开源,开发与迭代也在火热进行中,欢迎广大社区的朋友们能够参与其中。我们欢迎任何形式的贡献,包括但不限于新 feature、bugfix、代码优化、生态集成、测试工作、文档撰写。更加欢迎能够认领一个完整的特定语言实现的同学,踏出第一步,你就是 contributor!更有惊喜礼品和成为 committer 的机会等着你! 写在前面 Apache RocketMQ 是由阿里巴巴集团捐赠给 Apache 开源基金会的一款低延迟、高并发、高可用、高可靠的分布式消息中间件,并于 2017 年正式从 Apache 社区毕业,成为 Apache 顶级项目(TLP)。也是国内首个非 Hadoop 生态体系的互联网中间件顶级项目。 面向过去,RocketMQ 经过多年淘宝双十一的洗礼和考验,赢得了诸多客户的认可和青睐。面向未来,RocketMQ 历久弥新,为了更好地迎接云原生时代的来临,基于存算分离架构的 RocketMQ 5.0 应运而生。 RocketMQ 5.0 中引入了全新的无状态 Proxy 组件,在水平拓展,故障应急,多协议等方面都进行了诸多支持与改进(关于 RocketMQ 5.0 的详细介绍,欢迎关注 Rocketmq 官网[2])。同时也为接下来多语言客户端的实现打下了良好基础。 新的多语言SDK RocketMQ 5.0 客户端相比较于 4.x 的版本进行了诸多改进,会是未来社区客户端演进的主流方向。RocketMQ 4.x SDK 的多语言支持并不完美,协议的较高复杂度和语言绑定的实现细节使得多语言的支持与维护都变得棘手,而用户对多语言的诉求是强烈的。值此契机,RocketMQ 5.0 基于 gRPC 正式推出了全新的多语言 SDK。 相比较于 RocketMQ 4.x 的 SDK。RocketMQ 5.0 展现出了一副全新的面貌: 采用全新极简的,immutable 的 API 设计,使得 API 上手更简单,跨语言的对齐也变得更加简单; 完善的错误处理体系和错误码设计,开发者和用户对错误的处理可以更加得心应手; 在 PushConsumer/PullConsumer 之外新推出无状态 SimpleConsumer,实现逻辑轻量,用户可以自行管理消费侧消息的接收与应答,同时也对有更多定制化需求的客户提供了便利。 实现轻量化,代码量相比较旧有实现缩减 3/4 以上,开发和维护的成本更低; 标准化的 logging/tracing/metrics 输出,降低实现复杂度的同时,可观测性的提升会使得生产环境下的问题更容易被捕捉; gRPC 多语言特性,为 RocketMQ 5.0 客户端的多语言实现提供了支撑。RocketMQ 全新的客户端的协议层被替换,语言无关的 IDL 使得协议的维护和实现都更为极为简单。同时得益于 gRPC 强大的生态体系,使得 RocketMQ 与周边的集成也变得更为简便。 RocketMQ 5.0 中引入了新的的 pop 消费,创造性地在原生的队列模型之上支持了这种无状态的消费模式。不同于原始的更适用于流场景的队列模型,pop 机制更面向于业务消息的场景,使得开发者和用户可以只关心消息本身,可以通过「SimpleConsumer」提供单条消息级别的接受/重试/修改不可见时间以及删除等 API 能力。 Roadmap 目前 5.0 多语言 SDK 的 Java/C++ 已经有了相对比较完整的实现。 Go/C 已经提供了基础的 Producer/SimpleConsumer 的实现,其余的语言实现(PHP/Python/JavaScript/Rust 等)还在社区进行中,欢迎大家广泛参与。 对于一个从零开始的特定语言实现,一个大概的步骤如下: 部署 rocketmqnamesrv[3]和 rocketmqproxy[4] 方便与客户端进行调试,为降低部署成本,rocketmqproxy 可以采用 LOCAL 模式进行部署。 熟悉 rocketmqapis中的 IDL,适配新的 gRPC/Protobuf 协议:IDL 中描述了 5.0 SDK 中的语言无关的协议描述,通过 gRPC protoc 工具自动生成协议层代码。 应用新的 API 规范和设计:可以参考 Java 的 API 设计[5],总体指导思想是不可变性且行为明确。 实现 Producer/SimpleConsumer:Producer 提供最基本的四种不同类型消息的发送功能(普通/顺序/定时/事务),SimpleConsumer 提供基于 pop 语义的无状态消息接受/重试/修改不可见时间等能力。 统一的错误处理体系:由服务端产生的异常与错误均有完善的异常错误码和异常信息,各个语言实现需要以最适合的方式暴露给客户。 实现 PushConsumer:RocketMQ 4.x 中最为常用的消费者类型,用户侧只需要明确订阅关系和定义消息监听器行为即可,客户端实现中需要自动帮用户从远端获取消息。 客户端全方位可观测性:规范的日志输出,实现基于 OpenTelemetry/OpenCensus 的客户端 metrics 体系。 按照以上流程开发者在开发过程中出现的任何问题,都欢迎以 issue/pull request 的形式反馈到社区。 如何参与贡献 我们欢迎任何形式的贡献,包括且不限于新 feature、bugfix、代码优化、生态集成、测试工作、文档撰写。更加欢迎能够认领一个完整的特定语言实现的同学!不要犹豫,欢迎大家以 issue/pull request 的形式将你的想法反馈到社区,一起来建设更好的 RocketMQ! 相关资料 rocketmqclients: RocketMQ 5.0 多语言客户端实现 rocketmq: RocketMQ 主仓库(内置 5.0 proxy 实现) rocketmqapis: RocketMQ 5.0 协议具体定义 《RIP37: RocketMQ 全新统一 API 设计》 《RIP39: RocketMQ gRPC 协议支持》 相关链接 [1] Apache RocketMQ 5.0 SDK [2] rocketmq 官网 [3] rocketmqnamesrv [4] rocketmqproxy [5] Java 的 API 设计
作者:艾阳坤
#社区动态