方案一 :修改启动类
在启动类中增加 IRule 的bean
@Bean
public IRule rule(){
return new RandomRule();
}
在底层代码中是有这个 IRule 的bean 的,不过使用了 @ConditionalOnMissingBean 注解
如果没有此bean 则使用加@ConditionalOnMissingBean注解的bean,如果有就使用。
方案二:
修改消费方的配置文件
sca-provider: # 服务提供方的服务名
ribbon: # ribbon 是一个负载均衡组件,是 Ribbon 组件中提供了IRule 接口及相关实现
NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule # 参数是负载均衡的方式