当前位置: 首页 > article >正文

曹操出行借助 ApsaraMQ for Kafka Serverless 提升效率,成本节省超 20%

本文整理于 2024 年云栖大会主题演讲《云消息队列 ApsaraMQ Serverless 演进》,杭州优行科技有限公司消息中间件负责人王智洋分享 ApsaraMQ for Kafka Serverless 助力曹操出行实现成本优化和效率提升的实践经验。

曹操出行:科技驱动共享出行未来

曹操出行创立于 2015 年 5 月 21 日,是吉利控股集团布局“新能源汽车共享生态”的战略性投资业务,目前已经发展为中国领先的共享出行平台,曹操出行以“科技重塑绿色共享出行”为使命,将全球领先的互联网、车联网、自动驾驶技术以及新能源科技,创新应用于共享出行领域,以“用心服务国民出行”为品牌主张,致力于打造服务口碑最好的出行品牌。

曹操出行的 Kafka 应用实践

曹操出行将 Apache Kafka 应用于在线服务、可观测性、车联网、业务运营数据分析等业务场景。业务流量有明显的波峰波谷,如早晚高峰、节假日、极端天气等,都会导致流量突增。

曹操出行的数据来源广泛,包括 LBS、乘客、司机、新能源、车联网、基础研发等业务线。这些数据,如日志、binlog、链路追踪等,被采集并缓存到 Kafka 中,然后分发给不同的数据系统进行处理。

曹操出行的 Kafka 架构演进

随着业务规模的不断扩大,曹操出行决定将 Kafka 迁移上云,以实现业务效率与成本控制的双重优化。曹操出行从自建 Kafka 迁移到阿里云云消息队列 Kafka 版(ApsaraMQ for Kafka)v3 版本后,不仅实现了效率的显著提升和成本的有效降低,还简化了架构,大幅减轻了运维的复杂性。

下图清晰地展示了曹操出行的 Kafka 架构迁移至云端前后的对比。左侧为迁移前的自建 Kafka 架构,右侧为迁移至阿里云云消息队列 Kafka 版 v3 后的架构。

以下是迁移后架构的主要优化点:

  • 全托管、免运维: 云消息队列 Kafka 版提供全托管服务,基于存算分离架构,实现了计算的无状态化和存储的托管化,从而帮助曹操出行免除了系统级运维的投入,显著提升了运维效率。原先复杂繁琐的运维工作,如集群的部署、升级、扩缩容、topic 迁移、leader rebalance 等操作,现在简化为购买集群、升级集群、集群升配三个主要操作,曹操出行无需感知和参与扩缩容和 topic 迁移的具体过程。

  • 高可用、高可靠: 开源 Kafka 通过 ISR 机制实现服务高可用和数据高可靠,但计算和存储混杂,副本机制复杂度高,问题排查难度大。云消息队列 Kafka 版基于存算分离架构,实现各计算节点无状态且共享存储,不仅降低了复杂度,还提高了可运维性。计算节点高可用基于自研轻量 Leader 切换机制实现,在稳定提供读写服务的同时又能优雅轻便地 Leader 转移,是云消息队列 Kafka 版高效弹缩的核心底座。云消息队列 Kafka 版在存储层面基于阿里云飞天盘古 DFS,支持跨数据中心容灾,提供百微秒级平均延迟、毫秒级长尾延迟,数据可靠性 12个9,可用性 5个9。因此,迁移后的架构可靠性和可用性都得到了显著的提升。

  • 全面的可观测性: 云消息队列 Kafka 版 v3 提供了全面的可观测能力,帮助曹操出行构建了一套全方位的监控告警体系,以确保系统运行的稳定性和问题的响应速度。它不仅提供了曹操出行日常查看和定位业务问题所需的关键指标,如消息的生产消费速度和堆积程度、分区生产和消费倾斜等,还通过自动监控和处理 zk、broker 的负载信息,磁盘使用情况和 topic 分布信息等,简化了曹操出行需要关注的指标,使其能够更专注于业务本身,而无需过多关注底层细节。

ApsaraMQ for Kafka Serverless 助力曹操出行降本提效

随着业务持续增长,曹操出行采用了 ApsaraMQ for Kafka Serverless 系列,凭借其秒级弹性扩展和按需付费的优势,在实现灵活扩缩容的同时,保证了服务的敏捷性和稳定性,并节省了超过 20%  的成本。

具体业务价值包括:

  • 无需系统级运维,提供全托管服务
  • 存算分离架构升级、服务高可用、数据高可靠
  • 兼容开源大数据生态、兼容阿里云特色生态
  • 秒级弹性,灵活扩缩容,成本节省 20% 以上

ApsaraMQ for Kafka 的架构优势

随着云计算的广泛采纳和云基础设施的日益成熟,ApsaraMQ for Kafka 依托于阿里云成熟、强大的基础设施,如云服务器、飞天盘古存储系统、容器服务等经过大规模验证的产品,为系统的整体性能和稳定性提供了坚实的基础。

ApsaraMQ for Kafka 基于存算分离架构,对 Apache Kafka 的存储引擎进行了深度重构,实现了计算节点 Broker 的无状态化,充分利用弹性云存储,从而做到 Kafka 云服务的端到端弹性,实现了真正的 Serverless 架构。其中弹性云存储采用飞天盘古 DFS ,其构建于高性能的分布式存储系统之上,能够支持百万级客户,达到百微秒级平均延迟、毫秒级长尾延迟,并具备多 AZ 强一致多副本数据冗余。Serverless架构为 ApsaraMQ for Kafka 带来低成本、高性能等诸多价值。

在成本方面,由于数据直接写入高可靠的盘古 DFS,计算层 Broker 无流量复制,极大地降低了计算节点的 CPU 和网络带宽消耗,计算成本节约 60% 以上。存储层依赖盘古 DFS 实现高可靠的数据存储,并通过纠删码、冷热分层、基于 CIPU 软硬件协同优化等技术,有效降低了存储成本。同时消息存储数据还能够动态调控转冷比例,转储到对象存储,持续降低存储成本,按量阶梯付费,用得越多越便宜。得益于这套架构,ApsaraMQ for Kafka 相比社区版 Kafka 在支持同等业务规模的场景下,实际使用的资源成本得以数倍降低。

在性能方面,采用 OpenMessaging Benchmark Framework [ 1] 对 ApsaraMQ for Kafka 和 Apache Kafka 3.3 进行了攒批发送与碎片化发送场景下的吞吐延迟对比测试,测试结果显示,在攒批发送与碎片化发送场景下,ApsaraMQ for Kafka 在 TP999 的延迟表现整体均优于 Apache Kafka,并且随着吞吐的增加,这种性能优势更加明显,碎片化发送场景快十倍。

攒批发送,不同吞吐下 TP999 发送延迟对比

攒批发送,不同吞吐下 TP999 端到端延迟对比

碎片化发送,不同吞吐下 TP999 发送延迟对比

碎片化发送,不同吞吐下 TP999 端到端延迟对比

未来展望

曹操出行将与阿里云消息队列团队继续深化合作,共同探索并优化其消息队列架构,以应对日益增长的业务需求及挑战。并通过实际应用场景中的反馈,推动阿里云云消息队列 ApsaraMQ 产品迭代升级,不断完善解决方案,满足更多企业复杂多变的业务需求。

相关链接:

[1] OpenMessaging Benchmark Framework

https://openmessaging.cloud/docs/benchmarks/

点击此处,观看本场直播回放。


http://www.kler.cn/a/374190.html

相关文章:

  • C# XPTable 带图片的增删改查(XPTable控件使用说明十三)
  • 文献综述拆解分析
  • 什么是网络安全攻防演练,即红蓝对抗?
  • 【问题】配置 Conda 与 Pip 源
  • flutter 专题二十四 Flutter性能优化在携程酒店的实践
  • 软件23种设计模式完整版[附Java版示例代码]
  • 【ChatGPT】让ChatGPT为特定行业编写专业报告
  • 使用二进制安装K8S 多master节点 高可用集群
  • 高效集成:YS采购订单与帆软MongoDB的对接实践
  • 计算机视觉实验二:图像滤波
  • 如何在Linux系统中使用Git进行版本控制
  • 在Bash脚本中 set -e 是什么意思
  • STM32(hal库)中Systick是如何默认进行计时1ms的?
  • PHP语言学习教程:从入门到精通
  • C++ 快乐数 —— 优先算法(双指针思想)
  • 模板初阶及STL简介
  • 鸿蒙HarmonyOS NEXT一多适配技术方案
  • vue 和 django 报 CORS(跨域资源共享,Cross-Origin Resource Sharing)是一种跨域访问的机制,
  • 二百七十五、Kettle——ClickHouse增量导入数据补全以及数据修复记录表数据(实时)
  • 20.04Ubuntu搭建Vscode
  • Nature Electronics 用于语音识别的液体声传感器,基于悬浮在载液的钕-铁-硼磁性纳米颗粒
  • AI内容生成器 V1.6 WordPress插件 基于AI生成内容 Openai Content Generator
  • 数据结构-希尔排序(ShellSort)笔记
  • 重新架构:从 Redis 到 SQLite 性能提升
  • MySQL基本用法
  • 经典面试题收集(持续更新)