PingKai Logo
search icon

丰巢科技 | 支撑全链路核心系统稳定高效运作

通过将全链路核心系统从 MySQL 迁移至 TiDB,解决了海量数据和高并发场景下的水平扩展、数据一致性和运维复杂性难题,确保了从派件、收件到支付等核心环节的稳定高效运作。

业务挑战

  • 海量数据与扩展瓶颈: 业务数据激增,在线数据早已突破百TB级别。原 MySQL 单机架构难以水平扩展,部分实例磁盘容量超几十 TB,逼近性能衰退临界点。
  • 高并发与一致性难题: 派件收件环节需处理数以万计的并发请求,且支付业务对数据一致性要求极高。MySQL 读写分离存在秒级甚至分钟级延迟,而分库分表方案难以保障数据一致性。
  • 架构复杂与运维高危: 分库分表维护成本“特别高”。对 100 张分表执行 DDL 需操作 100 次,风险和运维压力巨大。此外,丰巢在订单中心实践中还遭遇了严重的数据倾斜(一张分表承载 90% 数据),导致分库分表设计完全失效。

MySQL 架构痛点

解决方案

丰巢基于对强一致性、高并发、海量存储的需求,选择 TiDB 作为核心数据库解决方案,具体落地如下:

  1. 全链路核心业务迁移:将派件数据、取件码信息、订单数据、用户数据、支付流水等核心业务数据迁移至 TiDB,依托其分布式架构解决 MySQL 扩展难题,支撑百 TB 级数据在线运行与高并发请求处理。
  2. 利用 TiDB 核心特性适配需求:TiDB 无缝水平扩展能力可无限拓展存储与计算,突破单机上限;通过 Raft 协议保证数据强一致性与故障自动恢复,满足支付业务与 7×24 小时运维需求;强兼容 MySQL 生态,通过 SQL 回放测试优化少量不兼容 SQL,降低迁移成本。
  3. 架构简化与弹性扩容:TiDB 内置分布式事务与一致性协议,减少对 Mycat 等中间件依赖;存算分离(TiKV 存储层 + TiDB Server 计算层)实现统一架构管理,降低运维复杂度;业务高峰期(如 “双 11”“618”)可快速扩容计算节点(如从 10 节点增至 15 节点并备 5 节点),应对流量波动。
  4. 版本升级优化性能:将 TiDB 从 v4.0(已达 EOL 阶段)升级至 v7.5 LTS,升级前通过 SQL 兼容性验证(覆盖 99% 核心场景)、TPC-C 性能回归(确保性能提升至少 10%)、高负载稳定性测试(达 99.99% 可用性)及自研工具数据校验,实现业务零感知过渡。

客户收益

  • 简化架构与弹性伸缩: TiDB 减少了对 Mycat 等中间件的依赖,实现了统一架构管理。其弹性扩展能力使丰巢能从容应对“双11”等高峰期,仅通过临时扩容TiDB Server(计算节点)即可扛住高峰流量。
  • 运维成本显著降低: TiDB 的高可用和自动化特性减少了人工干预。相较于分库分表的噩梦,在 TiDB 上执行 DDL 可直接操作,无需担心性能问题和业务连续性。三副本与故障自愈机制极大提升了系统稳定性。
  • 查询性能巨大飞跃: 升级至 v7.5 后,在未修改任何业务代码的情况下,TiDB 的执行耗时(P99)从 224ms 大幅降低至28.9ms,延迟降低了 77%。
  • 运维效率全面提升: 升级 v7.5 后,数据备份速度提升 5-6 倍(10 小时 -> 1 个多小时);大数据表添加索引速度提升 2-3 倍(7-8 天 -> 1-2 天);收集统计信息的执行速度提升 10 倍以上;主备同步(TiCDC)延迟降至毫秒级。
  • 存储成本显著优化: 升级到 v7.5 版本后,存储占用率缩小了 28%,在提升存储数据量的同时降低了存储成本。