微服务发布

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

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

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

蓝绿发布

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

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

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

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

相关推荐
计算机毕设定制辅导-无忧学长3 分钟前
基于Spring Boot的酒店管理系统
java·spring boot·后端
纳于大麓23 分钟前
Android Maven私服搭建(Windows)
java·maven
哈基米喜欢哈哈哈1 小时前
低版本的JVM遇到高版本的class字节码是否会报错
java·jvm
235161 小时前
【并发编程】详解volatile
java·开发语言·jvm·分布式·后端·并发编程·原理
洛小豆2 小时前
java 中 char 类型变量能不能储存一个中文的汉字,为什么?
java·后端·面试
爱吃烤鸡翅的酸菜鱼2 小时前
从数据库直连到缓存预热:城市列表查询的性能优化全流程
java·数据库·后端·spring·个人开发
一只学java的小汉堡2 小时前
Java 面试高频题:HashMap 与 ConcurrentHashMap 深度解析(含 JDK1.8 优化与线程安全原理)
java·开发语言·面试
huohaiyu3 小时前
Hashtable,HashMap,ConcurrentHashMap之间的区别
java·开发语言·多线程·哈希
信奥卷王4 小时前
[GESP202503 五级] 原根判断
java·数据结构·算法
小咕聊编程4 小时前
【含文档+源码】基于SpringBoot的过滤协同算法之网上服装商城设计与实现
java·spring boot·后端