“感谢贵司对极氪 App 架构云原生升级改造项目的鼎力支持。通过近半年多的全面合作,TAM 同学通过专业的技术能力、成熟的解决方案,帮助我们云原生架构和产品最佳实践,提高了 C 端业务系统的稳定性和敏捷性,为冲击更高的销量目标提供了坚实的技术支撑。这次项目仅仅是双方合作的开始,接下来希望通过异地多活等项目更好的提升业务的可用性,为我司汽车终端用户带来更好的出行体验和乐趣。”
--极氪开发总监
阿里云服务极氪汽车 App 全面升级云原生技术架构,有效提升用户出行体验,助力 001 猎装轿跑赢得高端纯电市场。
开展 14 项专项治理
极氪汽车是吉利控股集团旗下高端纯电汽车新品牌,2021 年 4 月极氪发布首款高端智能电动车型极氪 001,大获市场好评。截至 2022 年 12 月,001 车型累计交付量突破 7 万台,连续 3 个月问鼎自主品牌 30 万以上豪华纯电车型销量冠军。
极氪坚持不止于车的服务体验,除了为客户提供卓越产品的同时,通过极氪 App 连接用户,推出包含社区互动、充电补能、车联车控、订阅出行、认证服务、精品极物商场、整车订单、售后服务商城等多元创新举措,实现产品的全生命周期管理以及用户旅程的全场景覆盖。从客户想要了解相关车型,到有意向进行购买、提车使用、分享感受、充电补能、车联车控以及售后问题寻求解决方案等环节,都被集成到了这款 App 之上。极氪 App 是能提供智能控车以随时随地掌握车况的车主服务好帮手,同时提供购买用车好物、共享社区活动的极致出行体验,便于车主获取用车信息,让出行变得更便捷更有趣。
随着极氪 App 的上线,注册用户数量呈现出了爆发式的增长,用户身份及身份对应的使用场景也不断扩大。在此过程中,App 用户使用体验变得愈发重要,如何在用户规模高速增长的同时可以保证 App 的满足互联网三高的场景、以及稳定性、流畅度、快速响应需求的敏捷性保证,这些都给极氪 App 研发团队带来了一定的挑战。
业务连续性要求高
远程控车、在线地图、3C 商城等 App 核心服务对业务连续性要求非常苛刻,均需保证 7*24 小时持续在线。特别是面临旺季销售活动、新车型发布、突发热点事件等情况,App 面临着高并发大流量压力,存在部分功能失效、页面打不开、接口延迟过高,极端情况下造成 App 完全无法访问的异常,对用户体验造成严重影响。
版本发布压力大频率快
随着用户场景需求的增加,越来越多的功能等待发布上线,对迭代频率的要求越来越高,但由于 App 服务端缺少全链路灰度发布能力,为了保障业务稳定性,每次发布客户只能选择在凌晨的业务低峰期进行,开发、运维、测试同学苦不堪言,急需实现随时发版无损发布能力。
技术架构亟需迭代
公司成立之初,为了满足业务,实现 App 快速上线,对于技术架构整体设计考虑略显不足,体现在部分业务间耦合度高、系统链路过长、技术实现标准不一、云产品选型不合理等诸多问题,例如通过调研发现某核心接口请求链路过长,导致延迟抖动率很高,影响用户使用体验。
阿里云服务团队深入极氪业务,基于 SRE 八大体系对客户 App 现状进行全面调研评估,识别出技术架构问题和风险,为极氪输出了 App 云原生架构整体改造方案,重点包括全链路灰度发布、微服务治理、容量规划、弹性伸缩、云产品优化等 14 个专项展开全面深度治理。
随着极氪汽车销售越发火爆,其注册用户和每日活跃用户快速增长,需要支持的业务场景和新功能也越来越多,平均两三天一个小版本、半个月一个大版本的升级频率。在原有架构下,为了不影响白天业务高峰,每次发版只能选择在凌晨业务低峰期进行。阿里云服务团队帮助客户制定和落地金丝雀发布方案:通过部署灰度版本,并按照流量比例等进行灰度验证,验证完毕后发布生产环境并切流,从而满足了极氪小版本白天随时发布的诉求。针对极氪核心业务链路上多个微服务同时需要发版的场景,基于 MSE 云原生网关和流量灰度打标来实现多业务的全链路灰度,覆盖 CDN、网关、MQ、配置、数据库等灰度场景。在不需要更改任何业务代码的情况下实现多业务白天发版,同时通过逐步流量放大进行验证,如出现问题可及时回切流量,降低了白天发布可能导致的稳定性风险。通过改造云效流水线,帮助极氪实现核心业务自动化发布,更好地提升部署效率。
极氪 App 应用使用的是微服务架构,当进行业务发版、弹性扩缩容等场景时,会遇到请求失败率升高,POD 不断重启等问题。针对此问题,结合微服务引擎 MSE 的产品能力,通过应用下线过程中自适应等待和主动通知、应用上线过程中就绪检查、服务预热等手段,实现微服务无损上下线发布,有效规避了发布过程中的流量损失,降低业务访问失败风险。引入 MSE 流量防控能力,针对核心业务场景落地相应技术手段,如接口限流降级、MQ 削峰填谷、数据库慢 SQL 限流治理等,提高服务整体稳定性。
随着业务的快速发展,极氪 App 原架构下容量不足问题愈发突出,在面对新车发布、销售活动、突发热点情况时,无法快速进行水平扩展,并且大量核心业务库都放在同个数据库实例上,容易出现“一损俱损”。阿里云向极氪推荐使用 PolarDB-X 产品,并与极氪合作将积分库、用户库等核心库逐个剥离出来,通过对大表水平拆分解决单表过大问题,提高数据库层面水平弹性扩容能力。另外针对微服务弹性能力不足的痛点,输出多可用区节点弹性伸缩、HPA、CronHPA 等容器弹性方案,提高核心服务在流量突发情况的应对能力。
极氪 App 使用了较多的阿里云产品,业务发展较快,存在较多不合理的使用方式。通过多轮的方案讨论,阿里云为极氪制定了云原生产品优化方案:包含 ACK 集群版本升级、云原生网关替换、操作系统升级等。将微服务网关以及流量网关、Nginx ingress、API 网关等统一迁移到云原生网关,减少不必要的链路消耗及不同产品维护成本,提高核心链路的可观测性和降低网络延迟。基于阿里云 ARMS 产品针对开发、测试、运维不同角色关注点制定可观测标准,覆盖前端、App、微服务、容器等不同场景,实现端到端的全栈性能监控和端到端的链路追踪能力,提高问题或故障的定位能力。
为了明确极氪 App 能够真实承载的并发容量,协助极氪对核心业务接口进行多轮全链路压测和调优。通过全链路压测,不仅验证了灰度发布、无损上下线、弹性伸缩能力等专项改造方案效果,更增强了其将生产系统切换到云原生架构的信心。
基于云原生技术架构,有效提升汽车用户出行体验
阿里云服务团队与客户研发技术团队历时半年的联合攻坚,通过全链路灰度发布、微服务治理、容量规划、弹性伸缩、云产品优化等 14 个专项的全面深度治理,顺利完成极氪汽车 App 云原生架构升级项目,帮助客户核心系统提高了业务稳定性、敏捷性以及弹性能力,有效提升了用户出行体验。
“感谢贵司对极氪 App 架构云原生升级改造项目的鼎力支持。通过近半年多的全面合作,TAM 同学通过专业的技术能力、成熟的解决方案,帮助我们云原生架构和产品最佳实践,提高了 C 端业务系统的稳定性和敏捷性,为冲击更高的销量目标提供了坚实的技术支撑。这次项目仅仅是双方合作的开始,接下来希望通过异地多活等项目更好的提升业务的可用性,为我司汽车终端用户带来更好的出行体验和乐趣。”
--极氪开发总监
你好,我是AI助理
可以解答问题、推荐解决方案等