首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

DevOps 历史上最重要的演讲:每日十次部署

Etsy 首席技术官 John Allspaw 在 Effective DevOps 序言中说:

2009年,我的朋友Paul Hammond与我在O’Reilly的Velocity大会发表了题为“10+ Deploys a Day: Devand Ops Cooperation at Flickr” (每天部署10次以上: Flickr公司的Dev与Ops的合作)的演讲。尽管其中一些内容是关于持续部署的想法,但是很多人都选择关注“10次以上部署”部分而不是“合作”部分。在我看来,如果认为技术或“硬部分”可以与社会和文化“软部分”分开和脱离,这种看法是一个错误。并不是这样,它们不能分开。它们是紧密关联在一起的,对成功同等重要。换句话说,人和过程对工具和软件有很大影响,尽管大多数人不愿意承认或者甚至不知道这一点。

DevOps 实践指南中 Etsy持续部署案例——开发人员自助式部署(2014年)

与Facebook让发布工程师来管理部署活动的方式不同,在Etsy,任何想要执行部署的人都能直接部署,包括开发人员、运维人员和信息安全人员。Etsy的部署流程是如此安全和常规,以至于新入职的工程师在第一天就会执行生产环境部署。当然,Etsy的董事会成员也可以执行部署,甚至连“小狗都可以”!

Etsy的测试架构师Noah Sussman是这样描述的:“在一个普通的工作日里,刚到上午8点整,就有大约15个人和小狗开始排队。大家都希望在下班之前,一起部署完25个变更集。”

想要部署代码的工程师,首先要进入聊天室,并把各自的工作添加到部署队列中。然后,他们会观察正在进行的部署活动,看看还有谁在队列中,也会广播自己的活动进展,并在需要帮助的时候,寻求其他工程师的帮助。轮到某个工程师部署时,他会收到通知。

Etsy的目标是,尽量使用最少的步骤,使生产环境部署简单且安全。在开发人员提交代码之前,他们就在自己的工作站上执行了4500多个单元测试,而这些测试仅需要不到一分钟的时间。对外部系统(如数据库)的所有调用都已经打桩了。

在代码变更被提交至主干以后,持续集成服务器上会立即执行7000多个自动化测试用例。Noah Sussman写道:“通过试错,我们已经可以把测试时间控制在大约11分钟以内。[当某个变更引发问题并且需要修复时,]这给再一次执行自动化测试提供了机会,使修复时间不会超过规定的20分钟太多。”

加速中对部署的描述

总而言之,我们在2017年发现,与低绩效企业相比,卓越绩效企业具有如下优势:

代码部署频率高46倍;

从提交代码到部署代码的速度快440倍;

平均恢复时间(MTTR)只有低绩效企业的1/170;

变更失败率只有低绩效企业的1/5。

软件交付绩效详情(2017年)

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230318A079A200?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券