本文整理自达达集团架构师张清华和万明明在 Pulsar Summit Asia 上的演讲。一起来看 Pulsar 在达达集团的落地实践!

背景

1

达达集团是中国领先的本地即时零售和配送平台,于 2014 年在上海成立,2020 年 6 月在美国纳斯达克交易所上市(NASDAQ: DADA)。集团核心业务包括京东到家(中国最大的本地即时零售平台之一)和达达快送(开放式即时配送平台),日均处理订单量达 194 万单,业务覆盖全国。公司愿景是“让万物即时可得”,致力于通过技术驱动即时零售与配送服务的效率提升。技术团队由架构师张清华等专业人员组成,专注于消息平台等基础架构的研发与优化,以支撑业务的快速增长。

达达 × Pulsar | 百亿消息毫秒传输_运维

场景

2

达达集团的消息平台日均处理消息量超过 110 亿条,承载着核心业务运营与数据流转的关键作用。平台主要处理两类数据:一是业务数据(如订单状态更新、交易流水),二是日志数据(如用户行为追踪、应用性能监控)。其应用场景具有高并发、实时性要求强、流量波动显著等特点。例如,早高峰时段订单量激增,消息平台需实现流量削峰填谷;同时,平台还需支撑数据收集分析、算法模型训练及大数据处理等任务,是连接业务系统、日志系统和数据仓库的基础枢纽。这种混合负载场景要求消息中间件兼具低延迟、高吞吐和弹性扩展能力。

达达 × Pulsar | 百亿消息毫秒传输_复杂度_02

痛点

3

在引入 Pulsar 之前,达达集团基于 RabbitMQ 和 Kafka 构建了混合消息平台,但随着业务规模扩大,该架构暴露出三大痛点:

达达 × Pulsar | 百亿消息毫秒传输_运维_03

首先,延迟不可预测:早高峰期间, RabbitMQ 因流控机制导致消息堆积,TP99 延迟从毫秒级飙升至秒级,引发上层业务调用超时,尽管有补偿机制,但仍影响用户体验。

其次,Kakfa 扩容困难:每新增一个 Kafka 节点需提前规划数据分布、人工平衡 Topic,并专人监控,平均消耗 0.5 人日,无法快速响应业务增长。

第三,管理成本高:运维团队需同时维护两套系统(RabbitMQ 和 Kafka),随着 Topic 数量增加,管理复杂度呈指数上升,不同的运维流程和技术栈进一步降低了效率。

引入 Pulsar

4

为应对上述痛点,达达集团对新一代消息平台提出明确需求:低延迟、水平扩展便捷、高可用性、支持队列与发布/订阅混合模式,以及管理简单。经过多方对比,Pulsar 因其独特架构和特性成为首选。

性能方面,Pulsar 采用存储与计算分离设计,基于 BookKeeper 实现持久化,测试中在业务场景下吞吐量达 40 万TPS(开启持久化),平均延迟 <4 毫秒,TP99 延迟 ≤40 毫秒,比 RabbitMQ 节省约 50% 计算资源。

达达 × Pulsar | 百亿消息毫秒传输_运维_04

扩展性方面,Pulsar 支持存储层和计算层独立扩容,添加节点后可自动负载均衡,近乎零成本。

可用性方面,故障测试中(随机重启节点),数据零丢失且业务无感知。此外,Pulsar 原生支持多地理复制和多语言客户端,能够统一管理不同消息模式,显著降低运维复杂度。

实践

5

迁移过程中,达达团队选择了 Kafka-on-Pulsar(KoP)方案,通过协议兼容实现客户端无感知迁移,避免了修改数千行代码的高成本。实践中共解决两大关键问题:

一是 Kafka 版本兼容,自主适配 0.10.x 版本协议差异,解决压缩算法标识错误;

二是内存泄漏,通过升级官方修复版本消除 Broker 堆外内存溢出。

同时,团队应用 Pulsar Functions 实现日志清洗、加密等轻量计算,替代传统微服务,简化了数据处理链路。

达达 × Pulsar | 百亿消息毫秒传输_数据_05

成果

Results

迁移后,消息平台稳定性显著提升:早高峰延迟波动消失,TP99 延迟稳定在毫秒级;扩容效率提高,从每节点 0.5 人日降至近自动化;运维成本降低,统一平台减少了管理负担。目前,平台已稳定支持双十一等大促场景,日均处理百亿级消息。

总结

6

达达集团通过引入Pulsar,实现了消息平台的性能、扩展性和运维效率的全面提升。

未来,团队计划进一步深化 Pulsar 应用:一是推动更多业务迁移至以 Pulsar 为核心的统一消息中台,降低相关应用的运维成本;二是构建多云部署方案,利用 Pulsar 跨地域复制功能实现跨云容灾和异地多活,提升业务连续性。

Pulsar 的架构优势为达达集团应对未来业务增长和技术演进提供了坚实基础,体现了开源技术在企业关键场景中的价值。这一实践也为行业提供了可复用的消息中间件选型与迁移经验。