通过Nacos权重配置,实现微服务金丝雀发布效果(不停机部署)

在微服务项目迭代的过程中,不可避免需要上线;上线对应着部署,或者升级部署;部署对应着修改,修改则意味着风险。

传统的部署都需要先停止旧系统,然后部署新系统,之后需要对新系统进行全面的功能测试,如果新系统存在bug,则需要重新回退到旧系统,整个升级过程中,用户是无法正常使用系统的,用户体验不好。

下面利用nacos的特性,对相同服务的不同实例访问权重进行在线配置,动态调整流量,实现新旧服务的同时在线,平滑升级系统,或者回退系统。

重点:在nacos的配置文件application.properties中开启对负载均衡的支持。加入下面配置:

java 复制代码
#开启nacos的负载均衡策略
spring.cloud.loadbalancer.nacos.enabled=true

配置完成后,nacos必须重启;

点击"登录"按钮;

至此,通过nacos控制集群内不同实例的访问流量已经配置生效,生产环境中,可以先放入少量新版本的流量,观察没有错误(包括日志记录)后,再逐步提升新版本流量,最后旧版本服务实例集群下线,新版本集群根据实际负载策略,配置nacos中的权重即可,做到了不停机系统升级。

相关推荐
在荒野的梦想30 分钟前
若依微服务集成Flowable仿钉钉工作流
spring cloud·微服务·钉钉
AWS官方合作商4 小时前
AWS SNS深度解析:构建高可用、可扩展的云原生消息通信解决方案
云原生·云计算·aws
胡八一6 小时前
Kubernetes 节点磁盘空间空了怎么办?解决 containerd overlay 100%问题
云原生·容器·kubernetes
云计算运维丁丁6 小时前
k8s 1.30.6版本部署(使用canal插件)
云原生·容器·kubernetes
国科安芯6 小时前
高安全等级车规芯片在星载控制终端上的应用
人工智能·嵌入式硬件·物联网·架构·汽车
jakeswang6 小时前
Higress: 阿里巴巴高性能云原生API网关详解
网关·架构
菜鸟起航ing7 小时前
【Java面试系列】Spring Boot微服务架构下的分布式事务解决方案与性能优化详解 - 3-5年Java开发必备知识
java·spring boot·微服务·性能优化·分布式事务
小马爱打代码8 小时前
Spring Cloud Alibaba微服务治理实战:Nacos+Sentinel深度解析
微服务·架构·sentinel
hello早上好8 小时前
3-Zookeeper基础应用和实战
后端·架构