微服务发布

微服务架构下的灰度发布、蓝绿发布和滚动发布

灰度发布(又名金丝雀发布)

不停机旧版本,部署新版本,低比例流量(例如:5%)切换到新版本高比例流量(例如:95%)仍走旧版本。通过监控观察确认无问题,逐步扩大范围,慢慢的把所有流量都迁移到新版本上来两套环境交替升级,便于快速回滚,旧版本待流量为零,可以继续保留较长时间后下线给予旧版本较长时间处理完它正在执行的工作,属于无损发布

蓝绿发布

不停机旧版本,部署新版本,将流量切到新版本

两套环境交替升级,便于快速回滚,旧版本待流量为零,可以继续保留较长时间后下线给予旧版本较长时间处理完它正在执行的工作,属于无损发布

滚动发布
每次只升级一个或多个服务 ,升级完成后加入生产环境,不断执行这个过程,直到集群中的全部旧版本升级到新版本,需要较长的时间周期

按批次停止旧版本,启动新版本,由于旧版本不保留,一旦全部升级完毕后才发现问题,则无法快速回滚停止旧版本的过程中,无法精确计算旧版本是否已经完成它正在执行的工作,需要靠业务自身去判断,在某种意义上,属于有损发布

相关推荐
Seven9713 小时前
剑指offer-52、正则表达式匹配
java
代码or搬砖14 小时前
RBAC(权限认证)小例子
java·数据库·spring boot
青蛙大侠公主14 小时前
Thread及其相关类
java·开发语言
Coder_Boy_14 小时前
DDD从0到企业级:迭代式学习 (共17章)之 四
java·人工智能·驱动开发·学习
2301_7683502314 小时前
MySQL为什么选择InnoDB作为存储引擎
java·数据库·mysql
派大鑫wink14 小时前
【Java 学习日记】开篇:以日记为舟,渡 Java 进阶之海
java·笔记·程序人生·学习方法
lionliu051915 小时前
WebAssembly (Wasm)
java·开发语言·wasm
咸鱼加辣15 小时前
【java面试题】springboot的生命周期
java·开发语言·spring boot
Billow_lamb15 小时前
MyBatis Plus 中常用的插件列表
java·mybatis