用户量很大,有新功能上线或发布新版本的时候,先灰度升级。
分出一批服务器作为灰度环境。
1、将灰度环境现有的流量切掉,分配到其他现网环境。
2、在灰度环境升级新版本
3、按条件将友好用户引流到灰度环境。如先将办公环境的IP引入灰度环境,再将用户量小的省份的请求引入灰度,再引流大省份,最后全网升级。
引流切流可通过Nginx配置。1.通过IP地址判断,哪些IP段的请求会引入到灰度环境如办公环境的IP地址段。2.通过省份。locale获取省份标识码,配置哪些省份的请求引入灰度环境如甘肃等流量小的省份。3.版本号。User-Agent中可规定携带版本号,以此区分。
注:灰度的机器,平时没有流量。全网升级时,先升级一部分机器,通过健康检查等发现在升级的不通会流到其他正常机器。再升级剩余一部分,把灰度的流量切回全网。