spring cloud feign如何定制负载均衡策略


feign其实不是做负载均衡的,负载均衡是ribbon的功能,feign只是集成了ribbon而已,但是负载均衡的功能还是feign内置的ribbon再做,而不是feign。
feign的作用的替代RestTemplate,性能比较低,但是可以使代码可读性很强。

ribbon的负载均衡策略,默认的常见有随机规则,轮询规则,权重规则
随机不用说,轮询也不用说,权重意思是,请求时间越久的server,其被分配给客户端使用的可能性就越低。
ribbon也可以自定义策略。具体方法包括:
方法1.实现IRule接口
方法2.集成AbstractLoadBalancerRule 、PredicateBasedRule。

只要在配置中自动注入自定义的策略bean就可以

Java code
 
@Bean
   public  IRule ribbonRule() {
     // 负载均衡规则,改为随机
     return  new  RandomRule();
   }


当然你也可能会向使用配置的方式而非代码方式。
但是记住,配置方式优先级要大于代码方式。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM