针对于服务的负载均衡策略优先级是最高的
image.png
1.全局负载均衡策略--采取随机策略
下面的负载均衡策略针对的是全局的
只需要声明一个配置类,然后返回一个策略即可
@Configuration
public class RibbonConfiguration {
@Bean
public IRule defaultLBStrategy(){
return new RandomRule();
}
}
2.针对于服务的负载均衡策略
如果要配置对于服务的负载均衡策略,首先就需要去掉配置。
需要在配置文件中配置:
eureka-client 是服务的名字
eureka-client.ribbon.NFLoadBalancerRuleClassName=com.netflix.loadbalancer.RandomRule
3.使用注解配置
我们在一个空的配置类中加注解即可:
@Configuration
@RibbonClient(name="eureka-client",configuration = com.netflix.loadbalancer.RandomRule.class)
public class RibbonConfiguration {
其中name指定的是服务的名称,configuration指定的是使用策略
问题:如果使用了注解配置,也使用了配置文件的配置,那么哪个优先级更高呢,答案是使用了注解的配置优先级更高,这个跟加载配置顺序有关。
网友评论