public static void main(String[] args) throws Exception{
//httpclient连接池 //创建连接池
PoolingHttpClientConnectionManager cManager = new PoolingHttpClientConnectionManager();
//设置最大连接数
cManager.setMaxTotal(50);
//设置每个主机地址的并发数
cManager.setDefaultMaxPerRoute(20); //执行i请求
doGet(cManager);
} private static void doGet(PoolingHttpClientConnectionManager cm) throws Exception{
//从连接池获取连接,每次不一样
CloseableHttpClient httpClient = HttpClients.custom().setConnectionManager(cm).build();
//设置http get
HttpGet httpGet = new HttpGet("https://www.baidu.com");
//设置请求参数
RequestConfig config = RequestConfig.custom().setConnectTimeout(5000) //连接超时时间
.setConnectionRequestTimeout(500) //从线程池中获取线程超时时间
.setSocketTimeout(8000) //设置数据超时时间
.setStaleConnectionCheckEnabled(true) //提交请求前检查连接是否可用
.build(); httpGet.setConfig(config); //返回数据
CloseableHttpResponse response = null; try {
response = httpClient.execute(httpGet);
String con = EntityUtils.toString(response.getEntity(), "utf-8");
System.out.println(con);
}finally{
if(response!=null){
response.close();
}
httpClient.close();
} }

  

httpclient: 设置连接池及超时配置,请求数据:PoolingHttpClientConnectionManager的更多相关文章

  1. MongoDB设置连接池操作百万级以上数据

    开发环境 spring 4.3.7 + springBoot 1.5.2 + dubbo 2.6.5 + mongoDB 4.0.0 连接池配置 mongo-pool.properties sprin ...

  2. httpclient httpclient使用连接池

    httpclient使用连接池 http协议是无状态的,但毕竟是基于tcp的,底层还是需要和服务器连接的, 对于需要从同一个站点抓取大量网页的程序,应该使用连接池,否则每次抓取都和web站点建立连接, ...

  3. 使用druid连接池的超时回收机制排查连接泄露问题

    在工程中使用了druid连接池,运行一段时间后系统出现异常: Caused by: org.springframework.jdbc.CannotGetJdbcConnectionException: ...

  4. .Net连接字符串设置连接池大小显著提高数据库速度

    在访问mysql数据库时,如果在连接字符串中设置使用连接池,同时设置连接池大小,经测试,可以显著提高访问数据库时的速度. 连接字符串: connectionStrings>    <add ...

  5. Druid连接池参数maxWait配置错误引发的问题

    Druid连接池参数maxWait配置错误引发的问题 1. 背景 数据库服务器(服务部署在客户内网环境)的运行一段时间后,网卡出现了问题,导致所有服务都连接不上数据库,客户把网络恢复之后,反馈有个服务 ...

  6. springboot 连接池wait_timeout超时设置

    使用springboot 线程池连接MySQL时,mysql数据库wait_timeout 为8个小时,所以程序第二天发现报错,在url配置了 autoReconnect=true 也不行,查询配置以 ...

  7. 转 HttpClient 设置连接超时时间

    要: HttpClient 4.5版本升级后,设置超时时间的API又有新的变化,请大家关注. HttpClient升级到4.5版本后,API有很多变化,HttpClient 4之后,API一直没有太稳 ...

  8. HttpClient设置连接超时时间

    https://www.cnblogs.com/winner-0715/p/7087591.html 使用HttpClient,一般都需要设置连接超时时间和获取数据超时时间.这两个参数很重要,目的是为 ...

  9. HttpClient 基于连接池的使用

    场景:调用外部系统接口的http请求 要求: 1:可能是http请求,也可能是https请求 2:需要加入连接池的概念,不能每次发起请求都新建一个连接(每次连接握手三次,效率太低) 准备使用httpc ...

随机推荐

  1. IDEA修改Servlet的代码生成模板

    file--->settings,打开settings面板

  2. path包 + pathfile 包 — 汇总

    path包的使用 package main; import ( "fmt" "path" ) //go语言path包的学习 func main() { //返回 ...

  3. M-SOLUTIONS Programming Contest

    A.(n-2)*180 #include<cstdio> #include<cstring> #include<iostream> #include<algo ...

  4. SpringCloud--1--服务治理Eureka

    一.Eureka概述 1.Eureka特点 只需通过简单引入依赖和注解配置,就能让SpringBoot构建的微服务应用轻松地与Eureka服务治理体系进行整合. Eureka负责服务治理,即:微服务实 ...

  5. (七) Docker 部署 MySql8.0 一主一从 高可用集群

    参考并感谢 官方文档 https://hub.docker.com/_/mysql y0ngb1n https://www.jianshu.com/p/0439206e1f28 vito0319 ht ...

  6. C#通用公共类库ZXNetStandardDepot.Common

    总结了一下写项目中遇到的各种方法,总结前辈们的经验,生成了该类库,引用net standard类库,支持net core/net framework. 使用方法 1.nuget 搜索 ZXNetSta ...

  7. AspNetCore网关集成Swagger访问使用IdentityServer保护的webapi项目

    创建webapi项目 创建四个webapi项目,两个处理业务,一个网关,一个验证中心.四个项目对应的端口如下, ApiGateway:1999 IdentityServer:16690 Service ...

  8. 【转载】C#中string类使用Replace方法来替换字符串

    在C#的字符串操作过程中,有时候需要替换字符串中的某个子字符串,此时就可以使用到字符串类自带的Replace方法来实现,Replace方法将查找到所有符合被替换的子字符串,然后将之全部替换为目标字符串 ...

  9. python day7: time,datetime,sys,pickle,json模块

    目录 python day 7 1. time模块 2. datetime模块 2.1 date类 2.2 time类 2.3 datetime类 2.4 timedelta类 2.5 tzinfo时 ...

  10. DML 操作表中数据

    DML 是对于表中的记录进行增删改操作 一.添加数据   语法格式: insert into 表名[字段名] values[字段值]      表名:表示往那张表中添加数据   (字段名1,字段名2, ...