原理

- 主程序入口添加@EnableFeignClients注解开启对Feign Client扫描加载处理。根据Feign Client的开发规范,定义接口并加@FeignClient注解。
- 当程序启动时,会进行包扫描,扫描所有@FeignClient注解的类,并将这些信息注入Spring IoC容器中。当定义的Feign接口中的方法被调用时,通过JDK的代理方式,来生成具体的RequestTemplate。当生成代理时,Feign会为每个接口方法创建一个RequestTemplate对象,该对象封装了HTTP请求需要的全部信息,如请求参数名、请求方法等信息都在这个过程中确定。
- 然后由RequestTemplate生成Request,然后把这个Request交给client处理,这里指的Client可以是JDK原生的URLConnection、Apache的Http Client,也可以是Okhttp。最后Client被封装到LoadBalanceClient类,这个类结合Ribbon负载均衡发起服务之间的调用。
相关文章:
-
2021-08-19
-
2021-07-19
-
2021-12-23
-
2022-02-14
-
2021-06-23
-
2021-05-18
-
2021-12-06
猜你喜欢
-
2021-11-28
-
2021-09-19
-
2021-09-10
-
2021-06-23
-
2022-12-23
-
2022-12-23
相关资源
-
下载
2022-12-05
-
下载
2021-06-05
-
下载
2023-01-19
-
下载
2023-01-15