了解新式部署模式
最终用户总是以不同的方式使用应用程序。 数据中心会发生意外事件,来自多个用户的多个事件将同时发生,从而触发一些尚未以这种方式进行测试的代码。
为了应对这一点,我们需要接受一个事实:某些功能只能在生产环境中进行测试。
在生产环境中测试听起来有点可怕,但情况并非如此。
当我们谈到将功能版本和技术版本分开时,我们已经看到可以在不向全部用户公开功能的情况下部署功能。
如果我们采用这种功能切换的概念并将其用于部署模式,我们就可以在生产中测试软件。
例如:
- 蓝绿部署。
- 金丝雀版本。
- 暗启动。
- A/B 测试。
- 渐进式公开或基于环的部署。
- 功能切换。
仔细查看体系结构
你的体系结构和软件的当前状态是否已准备好持续交付?
你可能要考虑的主题是:
- 你的软件是作为一个整体构建的,还是分为多个组件?
- 能否单独交付应用程序的各个部分?
- 在每周多次部署的情况下,能否保证软件的质量?
- 如何测试软件?
- 是需要运行一个还是多个软件版本?
- 是否能够并行运行多个软件版本?
- 实现持续交付需要改进哪些内容?