报错信息

1、报错信息:Connection pool shut down

java.lang.IllegalStateException: Connection pool shut downat org.apache.http.util.Asserts.check(Asserts.java:34)at org.apache.http.pool.AbstractConnPool.lease(AbstractConnPool.java:191)at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.requestConnection(PoolingHttpClientConnectionManager.java:251)at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:175)at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88)at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184)at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:107)at com.youzidata.speech.util.HttpClientUtil.requestOCRForHttp(HttpClientUtil.java:54)at com.youzidata.speech.task.RowBackThread.run(RowBackThread.java:79)at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)at java.util.concurrent.FutureTask.run(FutureTask.java:266)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)at java.lang.Thread.run(Thread.java:745)

解决方法

HttpClients.custom().setConnectionManagerShared(true).setSSLSocketFactory(sslsf).build();

通过设置setConnectionManagerShared(true)解决了“Connection pool shut down”的问题

PoolingHttpClientConnectionManager pccm = newPoolingHttpClientConnectionManager();pccm.setMaxTotal(1000); // 连接池最大并发连接数pccm.setDefaultMaxPerRoute(1000);// 单路由最大并发数return HttpClients.custom().setConnectionManager(pccm).setConnectionManagerShared(true).setSSLSocketFactory(sslsf).build();

apache 官方的建议是,创建连接池,并为每一个接口URL分配一个线程,去执行,还给出了许多高并发访问的编码技巧

参考

原文:https://hc.apache.org/httpcomponents-client-ga/tutorial/html/connmgmt.html
参考网址:
1、http://www.mamicode.com/info-detail-2297359.html
2、https://blog.csdn.net/iq105/article/details/75355831
3、https://blog.csdn.net/ystyaoshengting/article/details/49098949?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-3&spm=1001.2101.3001.4242
4、https://hc.apache.org/httpcomponents-client-ga/tutorial/html/connmgmt.html

多线程下httpClient报错 Connection pool shut down相关推荐

  1. Connection pool shut down http请求异常关闭

    本人在项目运用中写了一个数据推送的组件,需要多线程频繁调用远程接口进行传输数据,远程请求通过HttpClient 使用 CloseableHttpClient 发起连接后,使用CloseableHtt ...

  2. 阿里oss上传,读取报错:Connection pool shut down

    Connection pool shut down报错: 今天springboot配置了阿里oss配置类:就一直报错: com.aliyun.oss.ClientException: Connecti ...

  3. httpclient报错:Invalid use of BasicClientConnManager: connection still allocated. Make sure to release

    httpclient报错 java.lang.IllegalStateException: Invalid use of BasicClientConnManager: connection stil ...

  4. java.lang.IllegalStateException: Connection pool shut down

    最近使用HttpClient 4.5 使用 CloseableHttpClient 发起连接后,使用CloseableHttpResponse 接受返回结果,结果就报错了,上网查了下,有位stacko ...

  5. 【转载】struts应用在断网情况下启动报错解决办法(java/net/AbstractPlainSocketImpl.java:178:-1)...

    无意间struts应用在有网络的情况下启动正常,在断网的情况下启动报错,报错代码如下图所示: SEVERE: Exception starting filter struts2 Class: java ...

  6. 解决IntelliJ IDEA下Maven报错Unknown lifecycle phase “.test.skip=true“. You must specify a valid lifecycle

    解决IntelliJ IDEA下Maven报错Unknown lifecycle phase ".test.skip=true". You must specify a valid ...

  7. 代码在eclipse下不报错,在doc命令行下报错--jar file和runable jar file

    今天开发一个小工具,引用了Log4j,来记录日志,在eclipse下运行,代码正常,打包成jar放到doc命令行下运行报错: Exception in thread "main" ...

  8. 多线程执行sql报错处理

    pymysql多线程访问数据库报错:Packet sequence number wrong - got 7 expected 2 原文:https://www.cnblogs.com/heiao10 ...

  9. 网页在兼容模式和急速模式下前者报错、后者正常的原因查找

    1.之前在项目中将查询按钮加上点击回车也执行查询,或许是之前没有注意,只是在谷歌上试了一下:后来是因为打印功能需要在兼容模式下进行,用户反馈此环境下点击按钮不起作用,后来自己模拟,发现是IE报错了. ...

最新文章

  1. 安装、部署和卸载解决方案
  2. 实体安全主要指计算机及网络硬件设备,计算机安全中的实体安全主要是指什么?...
  3. Groovy的本地安装和Eclipse插件的配置
  4. 如何快速实现word转为pdf
  5. python 最小二乘回归 高斯核_机器学习技法6-(支持向量回归)
  6. SP913 QTREE2 - Query on a tree II
  7. 欧几里得算法(辗转相除法)
  8. matlab drtoolbox 使用,MATLAB数据降维工具箱drtoolbox介绍
  9. 如何把多个PDF页面合并成一页PDF - PDF页面合并器使用方法
  10. easyUI的常用API
  11. 2016年腾讯校招笔试题 详解
  12. CameraRaw升级
  13. Cloudera 公司研发工程师,Kudu 发明人Todd Lipcon:Kudu,Storage for Fast Analytics on fast Data
  14. 【哈利波特】Sherbert Lemon对HP的解读之10
  15. 微信小游戏开发新手教程14-整合到一起,做出你的小游戏
  16. 房屋出租系统(第一版)
  17. ICC 图文学习——LAB1:Data Setup 数据设置
  18. 【数据压缩】作业1-1:对浊音、清音、爆破音进行音频分析
  19. nacos启动报错 Unable to start embedded Tomcat 以及项目链接nacos报错 server is DOWN now, please try again later!
  20. bilibili视频下载 (node.js)

热门文章

  1. 量子技术能将人“瞬间”转移到别的星球上吗?
  2. PageRank算法和HITS算法
  3. Don't Call Yourself A Programmer, And Other Career
  4. 全行业聚合支付平台接口_各类API聚合支付平台
  5. CVPR2022|稀疏融合稠密:通过深度补全实现高质量的3D目标检测
  6. 计算机操作系统唤醒原语,计算机操作系统原语分析(范文).doc
  7. [2023最新]美少妇Metasploit(MSF)下载安装及使用详解,永久免费使用,环境配置和使用技巧指南
  8. java中的常用名词,Java编程基础常见英语词汇
  9. php 如果记录集不存在,ThinkPHP教程_PHP框架之ThinkPHP(八)【CRUD与连贯操作】
  10. 来传智播客学到的第一天