目录

项目部署方式

部署方式主要有三种:

  • 滚动部署
  • 蓝绿部署
  • 金丝雀部署

滚动部署

逐台停止服务并部署,新旧并存。

出现问题时,回滚已部署的机器。

需要注意:

  • 回滚耗时
  • 新旧 API 会同时服务,新 API 需要兼容旧 API

蓝绿部署

又称为 A/B 部署、红黑部署。

两个集群,单个集群提供服务。

部署备份集群,然后流量切到备份集群。如果没问题,再升级主。

出现问题时,把流量切回主集群。

需要注意:

  • 等待未完成的事务结束才升级主
  • 数据库迁移(表结构修改)的回滚

金丝雀部署

又叫灰度发布。

A/B Test 是灰度发布的一种方式。

让部分用户使用新版本,如果这部分用户没有什么反对意见,则逐步扩大范围。

自动化要求高。