Feign配置负载均衡策略
同Ribbon一致
Feign单独作为Http客户端使用
@FeignClient(name = “service-name”,url = “http://localhost:8060”)
自定义配置
@FeignClient(name = “service-name”,configuration = Config.class)
拦截器
request-interceptors: test.RequestInterceptor
扩展配置
feign:
client:
config:
service-name(default)😕/default为全局设置
connect-timeout: 5000
read-timeout: 5000
logger-level: full
Feign继承
耦合度较高。
-
编写通用服务接口A,接口方法上写@RequestMapping(),此接口用于 feign。
-
服务提供者 实现上面接口A。
-
服务消费者的feign client接口 继承A。
Feign压缩
开启压缩可以有效节约网络资源,但是会增加CPU压力,建议把最小压缩的文档大小适度调大一点,进行gzip压缩。
一般不使用
Feign日志
none:不记录任何日志,默认值
basic:仅记录请求方法,url,响应状态码,执行时间。
headers:在basic基础上,记录header信息
full:记录请求和响应的header,body,元数据。
Feign构造方法多参数请求
GET:
- @RequestParam(“id”) long id)。
- 用map,方法(@RequestParam Map<String , Object> map)。
POST:
1.用bean。方法(@RequestBody User bean)