我相信你们都听说过Spotify--风靡全球的音乐流媒体服务。你可能不知道,Spotify是一个典型的例子,说明DevOps在提高开发者生产力方面是多么有效。
Spotify迅速实现了大规模的增长,部分原因是它使用了DevOps原则。但他们是如何做到的呢?
Spotify是如何使用DevOps来提高开发者的生产力的?好吧,这里有一个小的见解。
1)Spotify非常强调自动化
他们使用各种自动化工具来帮助管理他们庞大的用户群并保持事情的顺利进行。Spotify将构建数据管道、后端服务和网站的整个过程自动化。这有助于释放他们的开发人员,让他们专注于新的功能和改进,而不是救火问题。
2)他们使用DevOps工具快速、安全地进行实验
Spotify有一个高速的发布周期。他们使用各种DevOps工具来帮助他们快速、安全地进行实验。这些工具帮助他们在出错时自动回滚变化。他们的开发人员可以快速、轻松地尝试新的功能,而不用担心会破坏东西。
3)他们通过开发工具,如测试认证程序、Tingle CI/CD、Golden path和Backstage,实现了项目设置过程的自动化。
在这些工具的帮助下,他们取得了以下成果:
- 通过项目设置过程的自动化,提高了开发人员的生产力
- 通过实施严格的测试认证程序,提高了他们的代码库的质量
- 通过使用CI/CD管道,减少了从创意到生产的周期时间
为了进一步解释,黄金路径工具有助于减少构建后端服务、应用功能、数据产品等所需的决策。
后台允许工程师花不到5分钟的时间为一个新的网站设置Skeleton,而过去这需要14天以上的时间。
Spotify开发的名为Tingle的CI/CD系统在工程师提交项目到GitHub时自动构建,并自动运行所有测试。这使得从创意到生产的周期缩短了50%以上。
在测试认证计划下,任何符合认证标准的代码都会自动获得 "测试与认证 "的徽章。
令人难以置信的是,Spotify是如何实现持续部署和短周期的。他们采用了各种技术,如使用CI/CD工具,编写测试和遵循审查流程。通过使用DevOps,他们已经能够弥合软件开发和运营团队之间的差距,这有助于他们实现更快地进入市场的目标。