移动中台建设背景
腾讯内部App生态存在数量繁多、业务内卷严重、架构多样(纯NA、Hybrid、跨端)等问题,导致研发人员面临流程过深参与、质量问题排查、工具使用、数据统计等“杂事”困扰,影响研发效率和质量。原始初衷是建设移动中台以减少“杂事”,使业务研发回归本位。
研发人员困境
- 边界灰色工作闭环:部分团队习惯自行覆盖其他工种工作,形成研发闭环。
- “杂事”占比高:流程过深参与(20%~30%)、质量问题排查(20~30%)、工具使用(10~20%)、排障(20~30%)、踩坑(10%~20%)等占研发时间40%~70%。
- 业务痛点:多个业务架构需对应多个中台,增加业务团队负担;App架构升级时,原有中台难以支持;不同中台组件级差异大,业务需选择和拉通。
移动开发平台全览
覆盖研发运营全生命周期,包括环境检测、安全测试、业务运营、研发效能、基础组件、业务组件、UI组件、框架组件、移动网关、移动分析、监控、消息推送、数据同步、灰度发布等。
移动中台建设思路
- 研发框架建设:通过发布监控、研发质量提升、分析投放运营、组件复用、开发调试等,提升整体效率。
- 质量提升:先解决质量痛点,通过度量SLI设计、架构数据和模型分离、性能优化案例库、日志获取与分析、统一网关等提升质量。
- 热更方案:支持框架热更包下发、灰度策略、更新时机、加载时机、回退机制等。
- 灰度发布:支持自定义标签、百分比流量、监控分析结果串联、推送时间、推送上限等。
- 研发套件:解决组件化获取、文档、平台功能、引入、部署、SDK管理等问题,提供即插即用架构统一对接方案。
- IDE开发工具链:支持本地联调、跨端调试、项目脚手架、SDK文档获取、代码扫描测试、提测流水线、自动化部署、体验App分发调试等。
- 客户端组件框架:统一能力SDK封装、网络链接纳管、通信安全处理,实现接口统一、架构统一、SDK统一管理。
- 统一接口规范:通过接口映射路由映射、编译绑定、数据段初始化绑定等实现统一接口。
- 组件运行时共享:通过Interface.jar共享组件,实现APP间组件运行时共享。
移动中台落地实践
- 提升原产品性能助力交行全新升级:通过Hybrid业务解耦、网关入口统一、TCP链路改造、度量监控、X5内核优化、灰度测试/云真机、组件复用、持续集成、灰度发布等举措,实现迭代周期缩短、崩溃率下降、产品快速上线。
- 关键举措:架构解耦、网关统一、链路改造、度量监控、性能优化、灰度测试/云真机、组件复用、持续集成、灰度发布。
总结与展望
- 总结:质量和效率工具覆盖研发运营全生命周期,包括环境检测、安全测试、业务运营、研发效能、基础组件、业务组件、UI组件、框架组件、移动网关、移动分析、监控、消息推送、数据同步、灰度发布等。
- 展望:探索小程序+flutter架构,提升效率组件,深入组件质量,实现代码驱动的设计库,通过UI组件库渲染设计素材库,设计人员基于基础素材库输出更多模版库;实现SDK质量监控,包括上架标准、质量度量和SLI、日志上报、告警、数据展示等。