feign其实不是做负载均衡的,负载均衡是ribbon的功能,feign只是集成了ribbon而已,但是负载均衡的功能还是feign内置的ribbon再做,而不是feign。
feign的作用的替代RestTemplate,性能比较低,但是可以使代码可读性很强。
ribbon的负载均衡策略,默认的常见有随机规则,轮询规则,权重规则
随机不用说,轮询也不用说,权重意思是,请求时间越久的server,其被分配给客户端使用的可能性就越低。
ribbon也可以自定义策略。具体方法包括:
方法1.实现IRule接口
方法2.集成AbstractLoadBalancerRule 、PredicateBasedRule。
只要在配置中自动注入自定义的策略bean就可以
当然你也可能会向使用配置的方式而非代码方式。
但是记住,配置方式优先级要大于代码方式。
