字节跳动移动研发平台搭建
如果无法正常显示,请先停止浏览器的去广告插件。
1. 字节跳动移动研发
平台搭建
付强
2. 讲师简介
付强
Client Infrastructure-DevOps
ee.msup.com.cn
2020 Bytedance 字节跳动 Mobile-DevOps 平台建设
2016 Zhihu 知乎移动端基础设施 & 研发构建平台建设
2014 Baidu 手机百度业务开发
3. 目录
一、字节场景下的问题 & 挑战
二、面向 Repo 流水线在移动端的问题
三、字节一体化平台整合方案
四、回顾 & 总结
ee.msup.com.cn
4. 问题 & 挑战
ee.msup.com.cn
5. 场景复杂 - 单仓多组件
ee.msup.com.cn
6. 场景复杂 - 共享组件集成
ee.msup.com.cn
7. 场景复杂 - 跨平台类型多仓
ee.msup.com.cn
8. 场景复杂 - 总结
1. 项目工程架构十分复杂
2. 多仓依赖管理困难、发布流程繁琐
3. 多人协作难度变大,研发效率低下
ee.msup.com.cn
9. 平台分散 - 半自动化的流程
1. 代码评审 -> gitlab & gerri
2. 构建任务 -> gitlab ci & jenkins
3. 应用打包 -> 打包构建平台
4. 组件发布 -> 组件发布平台
5. …
ee.msup.com.cn
10. Repo or Feature ?
ee.msup.com.cn
11. 移动端以仓库为单位建造流水线的困境
ee.msup.com.cn
12. 移动端以仓库为单位建造流水线的困境
1. 仓库与仓库的关联关系难以呈现
2. 一个流程失败,需要启动新的流程修复
3. 一次完整的功能研发,要维护多个工作流程
4. 不同团队衍生出多种研发流程,无法统一管理
ee.msup.com.cn
13. 一体化平台整合
ee.msup.com.cn
14. 面向 Feature 的研发流程控制
• 多仓结构
• 状态服务
• 组件管理
• 合并服务
• 流程引擎
ee.msup.com.cn
15. 流程创建
ee.msup.com.cn
16. 客户端工具自动填充
ee.msup.com.cn
17. 流程概况
ee.msup.com.cn
18. 集成 CI
ee.msup.com.cn
19. 构建过程
ee.msup.com.cn
20. CodeReview 仓库聚合
ee.msup.com.cn
21. CodeReview 规则细分
ee.msup.com.cn
22. 打包 & 测试
ee.msup.com.cn
23. 流程总结
ee.msup.com.cn
24. 案例总结
• 面向 Feature 的流程模型
• 提供基础 Workflow 和可编排的 Pipeline 流水线
• 统一的构建与验收流程
• 统一的 CodeReview 入口
• 全覆盖 All-in-one 的功能聚合
• 优先保障体验一致性
ee.msup.com.cn
25. 整体视⻆
ee.msup.com.cn
26. 回顾 & 总结
ee.msup.com.cn
27. 规模
1. 移动项目数量:100
2. 每日参与人员:8000
3. 移动组件数量:1300
4. 每日构建次数:10w+
ee.msup.com.cn
28. Mobile DevOps 演进
ee.msup.com.cn
29. Mobile DevOps 演进
1. 更好的宏观管控,安全保障
2. 更一致的研发体验,降低学习成本
3. 提升流畅性,降低研发工作的上下文切换成本
4. 屏蔽流程复杂性,高效协作
ee.msup.com.cn
30. 关注msup公众号
获取更多工程效能实践案例