SpringCloud 整合nacos灰度发布方案

SpringCloud 整合nacos灰度发布方案

Springcloud 微服务体系的之间调用发起寻址时如下图:

SpringCloud 整合nacos灰度发布方案_第1张图片

从上图寻址流程中可以看出 干预寻址过程有两个阶段:第一个阶段是在DiscoveryClient从注册中心拉去请求服务实例;第二阶段是在LB时根据负载算法获取最终确定的实例。

paas-cloud现状

paas-cloud使用的springcloud版本SpringCloud2020.0.5 ,集成nacos使用的版本是:


 com.alibaba.cloud
 spring-cloud-starter-alibaba-nacos-discovery
 2021.1

在LB层已经放弃使用ribbon(ribbon已经停止维护)做负载了,新的版LB使用jar包:


 org.springframework.cloud
 spring-cloud-starter-loadbalancer

spring-cloud-starter-loadbalancer 目前支持的轮训跟随机算法,默认是轮训。

灰度初步方案

结合springcloud寻址过程中,初步方案是在LB时进行干预,根据nacos实现了注册实例时可以上报实例元数据,将灰度标识上报到服务实例中,在LB寻址的时候根据服务请求中的请求标识进行过滤,具体流程如下:

SpringCloud 整合nacos灰度发布方案_第2张图片

你可能感兴趣的:(spring,cloud,java,微服务,后端,spring)