蓝绿部署

同时运行两个版本的应用: 蓝版、绿版

流程:

  1. 老版本维持原状,继续运行。
  2. 部署一套新版本,等新版本运行起来后。
  3. 再将流量切换到新版本上。

缺点:

  • 同时运行两套系统
  • 资源要求翻倍

滚动发布

流程:

  1. 老版本维持原状,继续运行。
  2. 启动一台新版本。
  3. 停止一台老版本
  4. 继续启动新版本、停止老版本
  5. 直到升级完成

优点:

  1. 只需要多出一台资源
    1.

缺点:

  • 滚动升级过程中,流量会流向已经启动起来的新版本。但此时新版本不一定可用,可能需要进一步测试才能确认。
  • 滚动升级期间,整个系统处于非常不稳定的状态。如果发现了问题,也比较难以确定是新版本还是老版本造成的问题。

为滚动升级实现流量控制能力

灰度发布

灰度发布也叫金丝雀发布,起源是,矿井工人发现,金丝雀对瓦斯气体很敏感,矿工会在下井之前,先放一只金丝雀到井中,如果金丝雀不叫了,就代表瓦斯浓度高。

流程:

  1. 老版本维持原状,继续运行。
  2. 启动一台新版本,但不引入流量,测试人员进行线上测试。
  3. 引入少量流量到新版本,观察基运行状态,收集运行时数据。
  4. 对新旧版本做各种数据对比,也就是A/B测试
  5. 继续引入更多流量,不断调整新旧版本服务器数量,直到引入全部流量。
  6. 关闭旧版系统。
文档更新时间: 2020-06-10 11:10   作者:admin