清远网站推广优化公司,网站开发 activex,搞钱的路子网站,17做网店官网一、背景
灰度发布的目的是保证系统的高可用#xff0c;不停机#xff0c;提升用户体验。在微服务系统中#xff0c;原有系统不下线#xff0c;新版系统与原有系统同时在线#xff0c;通过访问权重在线实时配置#xff0c;可以让少量用户先应用新版本功能#xff0c;如…一、背景
灰度发布的目的是保证系统的高可用不停机提升用户体验。在微服务系统中原有系统不下线新版系统与原有系统同时在线通过访问权重在线实时配置可以让少量用户先应用新版本功能如果用户反馈存在问题则下线新系统如果反馈良好则逐步加大新系统的分流权重同时降低老系统的访问权重直到新系统替换老系统实现一种平滑的系统升级效果。
二、灰度发布方案
springcloud架构体系的gateway是专门用来做路由转发的包括一项重要的功能权重路由。nacos是目前最流行的微服务注册中心和配置中心可实现在线配置的实时生效无需重启系统此处将gateway的配置信息交给nacos托管即可实现分布式系统的灰度发布功能。 // sharetek-gateway.yml核心配置内容
spring:cloud:# 网关配置gateway:# 打印请求日志(自定义)requestLog: truediscovery:locator:lowerCaseServiceId: trueenabled: trueroutes:# 认证中心- id: sharetek-authuri: http://192.168.72.1:9210 // 新系统predicates:- Path/api/token,/api/test,/api/test2- Weightgroup1, 1- id: sharetek-auth2uri: http://192.168.72.1:9203 // 老系统predicates:- Path/api/token,/api/test,/api/test2- Weightgroup1, 8
由于在同一台电脑上测试用9210端口部署新系统9203端口部署老系统
- Weightgroup1, 1 配置访问权重group1相同的为一组组内的不同机器根据权重系数1计算分流权重权重越大被访问几率越大。 在实际生产环境系统升级时可以先调整服务A集群中其中一台机器的访问权重为0即停止被访问无论该服务是否运行都不会被访问再升级该服务调整为整体流量的3%这个根据业务实际情况而定释放极少量用户使用新功能观察新系统用户反馈情况如果一切良好再逐步调大新系统权重同时降低老系统权重直到新系统完全替换老系统如果升级过程中新系统出现问题可以随时通过调整权重系数回退到老系统。整个升级过程用户无感知极度丝滑非常优雅
也可根据服务器的性能高低分配访问权重。
三、注意事项
如果gateway配置权重后没有生效走的是轮巡或者有的生效有的仍然轮巡最大的原因是sharetek-gateway.yml的路由配置出了问题或者postman访问路径与路由配置路径不匹配。 1.错误案例如下 2.正确打开方式