天天看点

04_SpringCloud 整合Ribbon细粒度配置自定义

SpringCloud 整合Ribbon细粒度配置自定义

文章目录

  • ​​Ribbon内置负载均衡规则,细粒度配置自定义​​
  • ​​1. 需求分析​​
  • ​​2. java代码配置​​
  • ​​2.1. 创建一个类​​
  • ​​2.2. 然后创建一个类​​
  • ​​3. 配置文件配置​​

Ribbon内置负载均衡规则,细粒度配置自定义

默认的ZoneAvoidanceRule在没有Zone的环境下。类似于轮询(RoudRobinRule)

1. 需求分析

假设内容中心同时调用2个微服务,
用户中心A 用随机规则,调用用户中心B采用默认的轮询规则      

2. java代码配置

2.1. 创建一个类

@Configuration
@RibbonClient(name = "user-center",configuration = RibbonConfiguration.class )
public class UserCenterRibbonConfiguration {
}      

2.2. 然后创建一个类

@Configuration
public class RibbonConfiguration {
    @Bean
    public IRule ribbonRandomRule(){
        return new RandomRule();
    }
}      

3. 配置文件配置

格式:<serverNme>ribbon.NFLoadBalancerRuleClassName=策略类的全路径      
user-center:
  ribbon:
    NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule      

继续阅读