SpringCloud Ribbon 通过配置文件配置负载均衡策略无效

在看SpringCloud官方文档的时候,发现Ribbon可以通过配置文件方式来修改负载均衡策略,但是实际测试不生效。

yml配置如下:

# 服务提供者应用名称
sc-ribbon-producer:
  ribbon:
    # 指定服务提供者负载均衡策略
    NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule

实际测试中发现并没有使用随机策略,还是用的原始的轮询。

官方文档对应章节:
https://springcloud.cc/spring-cloud-dalston.html#_customizing_the_ribbon_client_using_properties

希望大神帮提点一下。

服务提供者应用名称sc-ribbon-producer 要与restTemplate 调用时,保持大小写一致。
亲测版本:springcloud Hoxton.SR1 springboot 2.2.2.RELEASE

// 比如: 你的服务提供者名称这里用的是全小写:sc-ribbon-producer,那么restTemplate里也要小写
 restTemplate.getForObject("http://sc-ribbon-producer/xx/xx", String.class);

1