一、常见发布方式
- 蓝绿发布
- 灰度发布
- 滚动发布
二、 相关概念及优缺点
1. 蓝绿发布
- 发布方式
项目发布时,不停掉当前运行的服务,而是重新搭建一套新的服务,测试无误后将流量切到新的服务上
- 优点
减少了发布过程中服务停止的时间,而且出现问题可以随时切回老版本,发布策略简单,用户无感知,平滑过渡
- 缺点
需要两倍的系统资源,出现问题影响范围较大,且需要保证数据库等资源对两个版本兼容
灰度发布
- 发布方式
先启动一个新版本服务,测试无误后,根据事先设置的某种灰度规则,将少量用户流量切到新版本服务中,其他的用户仍使用老版本服务,确认新版本无误后,逐渐将流量都切换到新版本上,更新其他服务器到新的版本
- 优点
在灰度过程中可以及时发现问题,影响范围较小,用户无感知,平滑过渡
- 缺点
发布策略复杂,运维要求较高
滚动发布
- 发布方式
取出一个或者多个服务器停止服务,执行更新,并重新将其投入使用。周而复始,直到集群中所有的实例都更新成新版本
- 优点
用户无感知,平滑过渡
- 缺点
更新时间长,出现问题无法快速回滚