《2019年Facebook发布策略的演进之路.pdf》由会员分享,可在线阅读,更多相关《2019年Facebook发布策略的演进之路.pdf(22页珍藏版)》请在三个皮匠报告上搜索。
1、G O P S 全 球 运 维 大 会 2 0 1 9 上 海 站G O P S 全 球 运 维 大 会 2 0 1 9 上 海 站Facebook 发布策略的演进之路G O P S 全 球 运 维 大 会 2 0 1 9 上 海 站目录DevOps支持业务演进之关键点1Facebook发布流程演进2Facebook发布相关组织架构演进3演进中的不变因素4G O P S 全 球 运 维 大 会 2 0 1 9 上 海 站开发提测质量不好,大量压力聚集到测试这一步,导致代码返工率高。上线之后问题仍然不少研发人员时间都花到哪里去了?每个迭代最后关头出现大量合并,导致大量问题聚集在最后关头,要么仓促
2、上线,要么推迟发布时间产品发布上线时,团队成员集体在场,熬夜联调。却将大把的时间花在了等待环境、等待验证G O P S 全 球 运 维 大 会 2 0 1 9 上 海 站产生业务价值工作 vs.交易成本交易成本业务量(团队规模)O(n)+生产成本交易成本成本+=上线代码质量问题导致返工 交付速度赶不上市场变化 等待环境 联调效率低 多人协作低效沟通 G O P S 全 球 运 维 大 会 2 0 1 9 上 海 站产生业务价值工作 vs.交易成本交易成本业务量(团队规模)交易成本业务量(团队规模)O(n)+O(1)G O P S 全 球 运 维 大 会 2 0 1 9 上 海 站目录DevOp
3、s支持业务演进之关键点1Facebook发布流程演进2Facebook发布相关组织架构演进3演进中的不变因素4G O P S 全 球 运 维 大 会 2 0 1 9 上 海 站发布流程随业务成长而演变不规范初创时期持续集成+类持续交付+定时部署高速发展期类持续部署持续发展期业务规模2005至今G O P S 全 球 运 维 大 会 2 0 1 9 上 海 站持续集成+类持续交付G O P S 全 球 运 维 大 会 2 0 1 9 上 海 站周部署+日部署+热修复部署G O P S 全 球 运 维 大 会 2 0 1 9 上 海 站类持续部署 G O P S 全 球 运 维 大 会 2 0 1
4、 9 上 海 站目录DevOps支持业务演进之关键点1Facebook发布流程演进2Facebook发布相关组织架构演进3演进中的不变因素4G O P S 全 球 运 维 大 会 2 0 1 9 上 海 站Dev,Ops到底由谁来做?SWESREAppOps服务平台SROPE/G O P S 全 球 运 维 大 会 2 0 1 9 上 海 站如何驱动人的主观能动性?开发工作开发团队测试工作测试团队运维工作运维团队竖井模式开发工作开发团队测试工作开发+测试团队运维工作开发+类SRE团队全栈模式测试平台、工具、框架测试工 具团队运维平台、工具、框架运维工 具团队提供支撑提供支撑G O P S 全
5、球 运 维 大 会 2 0 1 9 上 海 站目录DevOps支持业务演进之关键点1Facebook发布流程演进2Facebook发布相关组织架构演进3演进中的不变因素4G O P S 全 球 运 维 大 会 2 0 1 9 上 海 站以不变应万变调动人的主观能动性*全栈*共主干*工程师文化提高流程*灵活流程*自动化测试*快速反馈,增量开发 投资工具、平台*DRY*工具上持续投入 G O P S 全 球 运 维 大 会 2 0 1 9 上 海 站持续集成做到极致开发者共主干开发不使用功能分支使用Rebase才能入库,不能使用Merge代码尽早进入共享分支集成CI核心原则提交后入库,解决冲突代价
6、指数及增长G O P S 全 球 运 维 大 会 2 0 1 9 上 海 站流程+自动化保证CI检查效率不使用功能分支使用Rebase,不能使用Mergegit bisect run高效定位问题线性提交历史vs.G O P S 全 球 运 维 大 会 2 0 1 9 上 海 站自动化定位问题演示G O P S 全 球 运 维 大 会 2 0 1 9 上 海 站持续开发:Dont Block the Developers快速反馈本地开发入库前系统检查代码检查调测调优自动化测试本