扫码阅读
手机扫码阅读
一文看懂持续部署按需发布!DevOps部署和发布方法大全【万字长文】
3202 2023-09-01
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
文章来源:
精益敏捷
扫码关注公众号
文章摘要
前言:为了敏捷DevOps目的,即持续最短周期价值交付,需快速部署和发布。本文探讨部署与发布的概念、部署和发布策略,并最后总结。
什么是部署与发布
部署是指在特定环境中安装指定软件版本,发布则是向用户提供特性的过程。在互联网前,通常先发布后部署;现代则常见部署即发布。敏捷DevOps时代,部署和发布解耦,成为持续部署和按需发布。
持续部署
持续部署是自动化地将软件包发布到生产环境,而按需发布是根据业务需要决定何时发布功能。
持续部署实践
- 蓝绿部署:通过两个生产环境,一个旧一个新,测试新环境后快速切换。
- 滚动部署:逐步更新服务集群的服务单元,直至全部更新。
- 黑启动:新版本部署后对用户无感,然后逐渐扩大用户范围。
按需发布实践
- 金丝雀发布:先向部分用户发布,再全面发布。
- 灰度发布:在金丝雀发布基础上,分阶段扩大用户数量。
- A/B测试:提供两个版本功能给用户,通过对比决定更优版本。
支持不同发布方式的技术实现
- 特性开关:代码中控制特性发布。
- 特性分支:版本控制中为特性创建分支。
- 抽象分支:设计手段达到分支效果,逐步实现重构。
非死不可Facebook的案例
Facebook采用主干开发、分支发布,并结合特性开关、黑启动等技术实现快速稳健的部署和发布。
总结
特性开关是频繁发布的关键技术,而部署和发布策略选择应根据实际情况和需求。
想要了解更多内容?
文章来源:
精益敏捷
扫码关注公众号
精益敏捷的其他文章
SAFe® 4.5术语表中文版(二)
Scaled Agile Framework® Terms and Definitions 规模化敏捷框架术语和定义,字母A和B术语。
SAFe® 4.5白皮书中文版(三)——SAFe核心价值观
寻找那些与你有相同价值观的人,大家一起去征服世界。
SAFe® 4.5白皮书中文版(八)——大型解决方案SAFe(Large Solution SAFe)
大型解决方案SAFe配置用于开发最大和最复杂的解决方案,通常需要多个敏捷发布火车和供应商,但不需要投资组合层的考虑。这对于航空航天和国防、汽车和政府等行业来说很常见,因为大型解决方案是主要关注点,而非投资组合治理。
SAFe® 4.5术语表中文版(一)——首字母缩略词和缩写指南
Scaled Agile Framework® Terms and Definitions 规模化敏捷框架术语及定义,首字母缩略词和缩写指南。
SAFe® 4.5白皮书中文版(二)——介绍
凭借成熟的框架,我们可以更快、更省力地交付解决方案。SAFe定义了在企业范围内应用精益和敏捷原则的角色、团队、活动和工件,并提供出色的培训和辅导材料,来增加我们成功的机会。
加入社区微信群
与行业大咖零距离交流学习
软件研发质量管理体系建设
白皮书上线