RestTemplate、Httpclient、Ribbon、Feign、OpenFeign关系

https://www.cnblogs.com/qlqwjy/p/15594642.html
https://blog.csdn.net/HD243608836/article/details/110433868
白话:
1.RestTemplate底层采用Httpclient实现,可以配合ribbon的@LoadBalanced注解使用,实现负载均衡调用。
2.@LoadBalanced注解使用了@Qualifier注解,在@Autowire注入的时候可以将bean归类注入。
3.Ribbon相关配置类中使用到了该注解获取resttemplate集合,并且通过SmartInitializingSingleton的afterSingletonsInstantiated方法和restTemplateCustomizer,为resttemplate设置拦截器,之后resttemplate每次进行调用的使用都会经过该拦截器,进行Ribbon负载均衡的处理,最后通过HttpClient发送请求。
4.Feign、OpenFeign底层都集成了ribbon和Httpclient,Feign一般是指spring-cloud一代(netflix)中的组件,不支持Spring中的一些注解,比如PostMapping、GetMapping等;
OpenFeign是spring-cloud二代(alibaba)中的组件,支持Spring注解。

posted @ 2023-01-02 23:01  DiligentCoder  阅读(184)  评论(0编辑  收藏  举报