HttpComponents中如何使用HttpClient连接池
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,今天就跟大家聊聊有关HttpComponents中如何使用HttpClient连接池,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。对于 htt
千家信息网最后更新 2025年12月03日HttpComponents中如何使用HttpClient连接池
如果希望重用池化对象并且保持长连接,那么务必请调用 EntityUtils 类之中的静态方法toByteArray(),toString(),consume(),consumeQuietly()等。如果不希望重用池化对象,同时也不希望使用长连接,那么请调用 CloseableHttpResponse 的close() 方法。另外我们也会经常使用 Spring 的 RestTemplate 来发送 https 请求,对于 RestTemplate 一般也是会去整合 Apache HttpComponents HttpClient 组件,所以在使用 RestTemplate 的时候也请考虑以上各个 items 的设置。
今天就跟大家聊聊有关HttpComponents中如何使用HttpClient连接池,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
对于 httpclient 连接池使用一般考虑以下几点:
向连接池申请连接的超时时间
连接建立的超时时间,即 socket 进行 3 次握手建立连接的超时时间
连接超时时间,即 socket 读写超时时间
设置最大 redirect 次数
是否开启可用性检查
global 连接池中最大的连接数
individual route 连接池中最大的连接数
请求重试次数
设置ssl 请求的证书 trust 策略和 cn host name 验证策略
开启对于空闲连接以及过期连接的清理,设置空闲连接的时长
是否重用池化对象以及使用长连接
我们通过如下代码设置上述 items :
RequestConfig requestConfig = RequestConfig.custom().setConnectionRequestTimeout(10000)//设置连接池申请连接的超时时间,默认-1为无限时间.setConnectTimeout(5000)//设置socket进行3次握手建立连接的超时时间.setSocketTimeout(8000)//设置连接超时时间,即socket读写超时时间.setMaxRedirects(50)//设置最大的redirect次数,默认为50.setStaleConnectionCheckEnabled(Boolean.TRUE)//设置开启可用性检查,默认不开启.build();CloseableHttpClient htttpClient = HttpClients.custom().setDefaultRequestConfig(requestConfig).setMaxConnPerRoute(50)//设置individual route连接池中最大的连接数,默认为2.setMaxConnTotal(500)//设置global连接池中最大的连接数,默认为20.setConnectionTimeToLive(-1, TimeUnit.MICROSECONDS)//设置连接池中连接存活时间,默认-1代表无限存活,连接使用之后由response header "Keep-Alive: timeout"决定。.evictIdleConnections(60000, TimeUnit.MILLISECONDS)//开启空袭连接清理线程,设置连接池中连接最大空闲时间,以及连接清理线程的sleep时间,默认为10秒.evictExpiredConnections()//开启过期连接清理线程,过期时间默认为-1,连接使用后由response header "Keep-Alive: timeout"决定。//.setRetryHandler(retryHandler)//设置重试策略,默认3次重试//.setSSLContext(sslContext)//设置ssl请求上下文//.setSSLHostnameVerifier(hostnameVerifier)//设置ssl证书cn host name验证策略,默认为验证cn host name.build();
看完上述内容,你们对HttpComponents中如何使用HttpClient连接池有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。
时间
最大
策略
内容
对象
次数
空闲
线程
验证
可用性
方法
证书
检查
上下
上下文
之中
代码
代表
同时
时候
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
方舟手游非官方服务器自带等级
传送网网络安全建设方案
支付宝网络技术有限公司是飞猪吗
服务器硬盘检测标准
网络数据库技术必要吗
服务器岩浆块合成
大兴区运营网络技术软件
行政单位网络安全工作责任制办法
无线网络技术几代
中文资源是什么数据库
如何查看orcle数据库版本
中国网络安全产业协会
北京广联先锋网络技术公司
服务器第二个cpu
数据库的外键有什么用
tcu软件开发工程师
黑客文化与网络安全知到
北京服务器防火墙多少钱
家里电脑做成服务器
软件开发详细设计文档案例
选哪个服务器最好
sim卡无法接通激活服务器
特征以及网络安全威胁的分类
内蒙古智慧人口系统软件开发
vba调用sql建立数据库
盗贼之海怎么添加服务器
华为服务器 BIOS 六宫格
银川网络安全课程免费试学
服务器建系统发育树
tpf服务器制作网页