Feign内部集成了Ribbon,所以以上的例子也具有客户端负载均衡的功能。
Feign的执行流程概述
Feign在调用其他服务时,会根据注解中的url进行请求转发。...如果服务实例很多,还需要确认Ribbon的负载均衡策略是否导致请求到错误实例。
Feign调用返回超时
这种情况通常有两种原因:
服务提供方处理时间过长,超出Feign的读超时时间。...监听支持:
Feign不支持对指标与事件的监听。OpenFeign支持监听连接池大小、请求计数、处理时间等指标,以及连接成功、失败等事件。方便监控Feign运行状态。...Feign的拦截器:
Feign支持使用拦截器对其请求进行拦截,我们可以实现以下拦截器:
RequestInterceptor:在请求发出之前拦截,可以修改请求。...该线程 daemon状态,随应用关闭而关闭。
这种简单的线程模型,可以有效减少线程切换与管理 overhead,提高性能。但也存在几个问题:
一个慢请求会阻塞其他请求,影响整体延迟。