返回
洞悉最佳实践 | 字节跳动亿级DAU客户端发布纪实
见解分享
2024-02-18 10:28:01
作为“数据智能的引擎”,字节跳动作为国内的头部科技企业,拥有抖音、今日头条、西瓜视频、抖音火山版、皮皮虾等一众顶级应用,面向全球提供内容、产品和服务。字节跳动自成立以来,无论是DAU还是员工人数都处于快速增长的状态。
特别是在DAU突破6亿之后,各端客户端全年累计发布量超过2000次,如何解决字节跳动全年2000次客户端发布的挑战,成为其进一步发展的重点。因此,本文将从发布过程、发布技术、发布治理体系这三个方面,来分享字节跳动应对亿级DAU客户端发布挑战的实践。
发布过程
发布工程团队的主要职责是规划、协调、执行和支持所有客户端版本发布和升级,而客户端发布需要对应用程序和服务进行变更和更新,一般包括以下几个步骤:
- 需求评审:产品经理收集用户需求,技术专家进行需求评审。
- 开发测试:开发人员按照需求开发、测试新功能或修复缺陷。
- 发布审批:相关负责人评估发布风险,批准发布。
- 发布上线:发布工程师执行发布操作,将新版本发布到生产环境。
- 监控评估:发布后监控新版本运行情况,评估发布效果。
发布技术
字节跳动内部有众多的客户端产品,分布在不同的业务部门,每个产品都有自己的发布流程和技术栈,技术差异较大。为了提高发布效率,字节跳动内部有三个主要的技术组件:
- 发布平台:统一管理和调度客户端发布。
- 发布系统:负责客户端版本管理、灰度发布和回滚。
- 发布工具:辅助开发人员和发布工程师进行发布操作。
字节跳动的发布系统自研已有6年,拥有完备的功能,支持灰度发布、金丝雀发布、分阶段发布、一键回滚等多种发布策略,并提供强大的监控和告警功能,可以快速定位和解决发布问题。
字节跳动的发布工具也自研已有4年,主要有:
- 发布工具集: 提供一站式的发布操作,包括版本管理、灰度发布、一键回滚等。
- 发布客户端: 客户端发布工程师可以在本地使用发布客户端进行发布操作。
- 发布控制台: 方便产品经理和负责人查看发布进度和状态。
- 发布监控平台: 监控发布后的应用运行情况,提供告警和分析功能。
发布治理体系
字节跳动内部有完善的发布治理体系,包括发布流程、发布规范、发布责任制和发布培训等,确保客户端发布的安全、稳定和高效。
- 发布流程: 定义了客户端发布的标准流程,包括需求评审、开发测试、发布审批、发布上线和监控评估等步骤。
- 发布规范: 规定了客户端发布的规范,包括发布前检查、发布后监控和发布故障处理等。
- 发布责任制: 明确了客户端发布的责任人,包括产品经理、开发工程师、发布工程师和负责人等。
- 发布培训: 为开发人员和发布工程师提供发布培训,提高他们的发布技能和意识。
结语
字节跳动内部有完善的发布过程、发布技术和发布治理体系,确保了客户端发布的安全、稳定和高效。字节跳动在客户端发布领域的探索和实践,为业界提供了有益的参考。