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

文章讲述了在微服务项目迭代中,如何通过Nacos的特性实现新旧服务的在线部署和流量调整,以及如何配置负载均衡以支持平滑升级和故障回退,避免用户中断。同时提到SpringCloud中Dubbo跨集群访问的问题。
摘要由CSDN通过智能技术生成

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

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

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

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

#开启nacos的负载均衡策略
spring.cloud.loadbalancer.nacos.enabled=true

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

 点击“登录”按钮;

 

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

 2024-3-26重要补充:

 1.2024-1-30按照上面的操作,nacos配置权重负载均衡的确是生效了的,但是今天再次运行代码,无论如何都是轮训了,不知道哪里出了问题,下面是官网的解释,如果这个功能存在,还是很有用的,如果哪位大神有方法,还望赐教。

FAQNacos FAQicon-default.png?t=N7T8https://nacos.io/zh-cn/docs/v2/guide/user/faq.html

2.在springcloud中dubbo跨集群是无法正常访问的,否则提示找不到服务实例;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值