很多场景下,可能需要根据自定义的Riboon的配置,例如修改ribbon的负载均衡规则等。

配置前缀是:.ribbon.

  • NFLoadBalancerClassName:配置ILoadBalancer的实现类

  • NFLoadBalancerRuleClassName:配置IRule的实现类

  • NFLoadBalancerPingClassName:配置IPing的实现类

  • NIWSServerListClassName:配置ServerList的实现类

  • NIWSServerListFilterClassName:配置ServerListFilter的实现类



  修改步骤:

修改movie项目yml文件:

user:
  ribbon:
    NFLoadBalanceRuleClassName: com.netflix.loadbalancer.RandomRule

将负载均衡规则修改为随机。

启动注册中心、movie,同时启动多个user项目,访问http://localhost:8020/movie/findById?userId=1

观察user两个实例的控制台:

springCloud入门学习(七):通过属性自定义Ribbon配置_第1张图片

springCloud入门学习(七):通过属性自定义Ribbon配置_第2张图片

两个控制台打印的访问log不再保持均衡,表示两个实例被随机访问,达到修改负载均衡规则。