使用连接池对于feign的远程调用的优化
2023-12-16 18:42:06
    		- Feign底层发起http请求时,默认使用URLConnection发起http请求,不支持连接池操作,那么为了提高Feign的性能,可以采用的手段是使用连接池代替默认的URLConnection 
  
- 支持连接池的http客户端 
    
- Apache HttpClient
 - OKHttp
 
 
 - 支持连接池的http客户端 
    
 - 本示例采用的是Apache HttpClient进行连接池集成 
  
- 首先在maven的pom文件中添加feign-httpclient依赖 
    
-  
<!-- httpClient的依赖 --> <dependency> <groupId>io.github.openfeign</groupId> <artifactId>feign-httpclient</artifactId> </dependency> 
 -  
 - 在application.yml文件中添加连接池配置信息 
    
-  
feign: client: config: # 指的是@FeignClient中的value设定的值,也就是对应的微服务名称 nacos-feign-user-service: # 日志级别 loggerLevel: NONE httpclient: # 开启feign对HttpClient的支持 enabled: true # 最大的连接数,根据实际压测数据调整 max-connections: 256 # 每个路径的最大连接数,根据实际压测数据调整 max-connections-per-route: 64 - 相关完整配置官网详细信息
 
 -  
 
 - 首先在maven的pom文件中添加feign-httpclient依赖 
    
 - 如何验证连接池已经生效 
  
- 找到源码类FeignClientFactoryBean,在loadBalance的方法内打断点调试 
    
 - 然后通过debug模式启动微服务,断点出现之后向下执行可以看出client为ApacheHttpClient即可说明已经生效 
    
 
 - 找到源码类FeignClientFactoryBean,在loadBalance的方法内打断点调试 
    
 
    			文章来源:https://blog.csdn.net/weixin_41926152/article/details/135035203
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
    	本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!


