使用Nginx实现灰度发布
灰度发布概述
灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式。AB test就是一种灰度发布方式,让一部分用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。
灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。
灰度发布常见一般有三种方式:
- Nginx+LUA方式
- 根据Cookie实现灰度发布
- 根据来路IP实现灰度发布
本文主要将讲解根据Cookie和来路IP这两种方式实现简单的灰度发布。
部署实践
环境说明
1 | # cat /etc/redhat-release |
基于IP地址的灰度发布实现
根据IP地址反向代理到不同的后端server
1 | upstream prod { |
根据IP地址设置不同的网站根目录
1 | server { |
set 命令依赖rewrite模块
利用geoip做基于地理位置的灰度发布
参考:http://www.mamicode.com/info-detail-1477149.html
基于cookie的灰度发布实现
if指令实现
map指令实现
参考:https://www.cnblogs.com/weifeng1463/p/7353710.html
参考资料
https://www.cnblogs.com/weifeng1463/p/7353710.html
https://www.cnblogs.com/zhangyin6985/p/6064350.html
======================================================
希望各位朋友支持一下
- 领取我的阿里云幸运券,谢谢.
- 使用腾讯云资源
- Linode VPS
- 搬瓦工VPS
- 阿里云1888元云产品通用代金券点我
- 阿里云最新活动全民云计算升级-拼团上云更优惠
本文作者:dongsheng
本文地址: https://mds1455975151.github.io/archives/8bece5b5.html
版权声明:转载请注明出处!


