feign 默认采用的是JDK 的HttpURLConnection 来进行通讯。
feign 调用过程
HystrixInvocationHandler 类的invoke 方法 
然后是 SynchronousMethodHandler 类的 invoke方法

这个client 为LoadBalancerFeignClient 类,调用它的execute 方法、

重点在 getClientConfig方法中,(默认ribbon 的connectionTimeOut 为 2000ms,readTimeout 为 5000ms),会将这两个值都替换为1000ms

会实例化 RibbonClientConfiguration 类的 ribbonClientConfig 这个方法返回的Bean,就是DefaultClientConfigImpl,并覆盖上面说的两个值。

本文深入解析了Feign如何使用Ribbon进行负载均衡,特别是在调用过程中的HystrixInvocationHandler和SynchronousMethodHandler类的作用,以及如何通过getClientConfig方法调整连接超时和读取超时设置。
2417

被折叠的 条评论
为什么被折叠?



