springcloud-Ribbon负载均衡规则的替换
Ribbon默认是轮询,如果想换种负载均衡的方式,步骤如下:
1.创建一个自定义配置类,参考如下:
@Configuration public class myRule { @Bean public IRule irule(){ return new RandomRule(); } }
注意:该配置类不能放在@ComponentScan能扫描的包下,什么意思呢?比如主启动类所在包及子包,但不能存放该配置类,得放到其他没有@ComponentScan扫描的包下
2.在主启动上加一个注解如下
@RibbonClient(name = "cloud-payment-service",configuration = myRule.class) public class OrdersApplication {
name为要访问的服务的服务名称,configuration表示使用我们自定义的负载均衡策略