目录
1. 简介
Feign,一种声明式的web service client,可以很容易的创建http apis client。创建一个interface并添加注解,即可使用Feign。
简化http api调用的同时,支持多种http-client、协议、编解码方式。
Spring Cloud为Feign提供了"集成Ribbon和Eureka的负载均衡http client"。
2. 原理
2.1. 动态代理 动态代理 动态代理
2.2. 懒加载负载均衡器的问题与解决
feignclient第一次调用时,才会生成负载均衡器,从eureka server获取serverlist。因此会导致第一次调用较慢。可以通过配置解决该问题。
ribbon.eager-load.enabled:开启Ribbon的饥饿加载模式
ribbon.eager-load.clients:必须指定需要饥饿加载的客户端名称、服务名