首页 > 极客资料 博客日记
mse~路由实现某个页面的灰度功能
2024-10-31 18:00:03极客资料围观14次
文章mse~路由实现某个页面的灰度功能分享给大家,欢迎收藏极客之家,专注分享技术知识
起因
我有个网站A【蓝色服务】,要对网站A进行改版【绿色服务】,其中用户中心已经改完了,希望当用户访问时,如果http请求头中包含isGroup,并且isGroup=1时,去新的绿色服务,反之就还是去蓝色服务。
前提
- 蓝绿服务,域名是同一个,如
lind.gray.com
- 蓝绿服务,各个页面的URL是同一个
- 用户测在访问URL时,它们不清楚将要到哪个环境,蓝绿环境是在网关路由中转发的
蓝绿部署
蓝绿部署(Blue-Green Deployment)是一种软件发布策略,旨在减少系统停机时间和风险,同时确保用户体验的连续性。以下是关于蓝绿部署的一些关键点:
蓝绿部署的基本概念
环境划分:
- 在蓝绿部署中,通常会有两个相同的生产环境:一个是“蓝色”环境,另一个是“绿色”环境。
- “蓝色”环境当前正在处理所有的生产流量,而“绿色”环境则用于新版本的部署和测试。
切换流量:
- 当新的应用版本在“绿色”环境中经过充分测试后,可以通过改变负载均衡器的配置,将流量从“蓝色”环境切换到“绿色”环境。
- 这种切换可以迅速完成,从而最小化用户感知到的中断。
回滚机制:
- 如果在“绿色”环境中发现问题,可以快速将流量切回“蓝色”环境,实现无缝回滚,保障系统的稳定性。
MSE上的实践
一 进行蓝色和绿色服务里,在路由中开启灰度发布,配置灰度策略,可在一个绿色服务中配置即可
二 如果希望对某个页面进行蓝绿部署,如/user/center
用户中心实现它,你需要下面的操作
- 添加新的路径,域名还是之前的,如
lind.gray.com
- 配置路径标识:/user/center,蓝绿两个服务都要配置
- 配置灰度策略,蓝色服务,不用配置
- 绿色服务,需要开启灰度发布,并添加策略,如header中包含isGroup=1的值,走绿色新的服务,
绿色服务的路由里,只配置具体要灰度的页面即可,如果要求全站都灰色,路径就是/即可
测试
- 当你访问
lind.gray.com
时,直接访问蓝色,老版服务 - 当你访问
lind.gray.com/user/center
时,还是直接访问蓝色,老版服务 - 当你访问
lind.gray.com/user/center
,并且在http请求头中包含isGroup=1时,会访问绿色,新版服务的/user/center页面
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签:
相关文章
最新发布
- Nuxt.js 应用中的 prerender:routes 事件钩子详解
- 【问题解决】Tomcat由低于8版本升级到高版本使用Tomcat自带连接池报错无法找到表空间的问题
- 【FAQ】HarmonyOS SDK 闭源开放能力 —Vision Kit
- 六、Spring Boot集成Spring Security之前后分离认证流程最佳方案
- 《JVM第7课》堆区
- .NET 8 高性能跨平台图像处理库 ImageSharp
- 还在为慢速数据传输苦恼?Linux 零拷贝技术来帮你!
- 刚毕业,去做边缘业务,还有救吗?
- 如何避免 HttpClient 丢失请求头:通过 HttpRequestMessage 解决并优化
- 让性能提升56%的Vue3.5响应式重构之“版本计数”