http.socket.timeout(读取超时)

套接字毫秒级超时时间(SO_TIMEOUT),这就是等待数据,换句话说,在两个连续的数据包之间最大的闲置时间。
如果超时是0表示无限大的超时时间,即这个参数没有设置或为0表示读取超时时间为无限大

http.tcp.nodelay

决定了是否使用Nagle算法。该算法通过最小发送的分组数量来节省带宽。
当应用程序希望降低网络延迟并提高性能时,他们可以关闭nagle算法。
如果这个参数没有被设置表示TCP_NODELAY就会开启(无延迟)

http.socket.buffer-size

决定了内部套接字缓存使用的大小,来缓存数据同时接受、传输http报文。
这个参数期望得到一个java.lang.Integer类型的值。如果这个参数没有被设置,那么Httpclient将会分配8192字节的套接字缓存。
得到一个java.lang.Integer类型的值。如果这个参数没有被设置,那么Httpclient将会分配8192字节的套接字缓存。

http.socket.linger

使用指定的秒数拖延时间来设置SO_LINGER。最大的连接超时值是平台指定的。
0表示该选项是关闭的。-1表示该选项默认使用的是JRE默认的。这个选项仅仅影响了套接字的关闭操作,如果这个参数没有被设置就假设为-1(JRE)默认的

http.connection.timeout

决定了知道连接建立时的毫秒级超时时间。
超时时间的值为0解释为一个无限大的时间,这个参数期望得到一个java.lang.Integer类型的值。如果这个参数没有被设置,连接操作将不会超时。

http.socket.stalecheck

决定了是否使用旧的连接检查。当在一个连接之上执行一个请求服务器端的连接已经关闭时,关闭旧的连接检查可能导致获得一个IO错误风险时显著的性能提升,
出于性能的关键操作,这个检查应该被关闭。如果这个参数没有被设置那么久的连接将会在每个请求执行之前执行。

http.connection.max-line-length

决定了最大请求行长度的限制。如果设置为一个正数,任何Http请求超时这个限制将会引发java.io.Exception异常。
负数或零将会关闭这个检查。如果这个参数没有设置,那么就不强制进行限制了。

http.connection.max-header-count

决定了允许的最大HTTP头部信息数量。如果设置为一个正数,从数据流中获得HTTP头部信息数量超过了这个限制就会引发java.io.IOException异常。
负数或零将会关闭这个检查。如果这个参数没有被设置那么就不强制进行设置了。

http.connection.max-status-line.garbage

决定了在期望得到http响应状态行之前可忽略请求行的最大数量。使用http1.1持久性连接,这个问题产生的破碎的脚本将会返回一个错误Content-length
CloseableHttpClient httpClient = HttpClients.createDefault();
       RequestConfig requestConfig = RequestConfig.custom()
                      .setSocketTimeout(10*1000)
                      .setConnectTimeout(10*1000)
                      .build();
       HttpGet httpGet = new HttpGet("http://192.168.56.101:7070");
       httpGet.setConfig(requestConfig);
       CloseableHttpResponse response= null;
       try {
           response=httpClient.execute(httpGet);
           /**
            * 获取连接状态code
            */
           int statusCode = response.getStatusLine().getStatusCode();
           if(statusCode==200){
               System.out.println("连接成功!");
          }
           response.close();
      }catch (Exception e){
           e.printStackTrace();
      }finally {
           try {
               httpClient.close();
          } catch (IOException e) {
               e.printStackTrace();
          }
      }

httpclient 连接参数的更多相关文章

  1. HttpClient 模拟发送Post和Get请求 并用fastjson对返回json字符串数据解析,和HttpClient一些参数方法的deprecated(弃用)的综合总结

    最近在做一个接口调用的时候用到Apache的httpclient时候,发现引入最新版本4.5,DefaultHttpClient等老版本常用的类已经过时了,不推荐使用了:去官网看了一下在4.3之后就抛 ...

  2. httpClient 连接池问题出现403.9

    困扰了半个月时间终于找到连接池的问题,由于调用第三方有异常导致连接不能及时释放 所以写了一个定时扫描释放连接 监控连接池释放连接: public static class IdleConnection ...

  3. (五)HttpClient 连接超时及读取超时

    第一节: HttpClient 连接超时及读取超时 HttpClient连接超时及读取超时 httpClient在执行具体http请求时候 有一个连接的时间和读取内容的时间: HttpClient连接 ...

  4. HttpClient连接超时及读取超时

    HttpClient连接超时及读取超时 httpClient在执行具体http请求时候 有一个连接的时间和读取内容的时间: HttpClient连接时间 所谓连接的时候 是HttpClient发送请求 ...

  5. HttpClient连接池的一些思考

    前言 使用apache的httpclient进行http的交互处理已经很长时间了,而httpclient实例则使用了http连接池,想必大家也没有关心过连接池的管理.事实上,通过分析httpclien ...

  6. HttpClient实战三:Spring整合HttpClient连接池

    简介 在微服务架构或者REST API项目中,使用Spring管理Bean是很常见的,在项目中HttpClient使用的一种最常见方式就是:使用Spring容器XML配置方式代替Java编码方式进行H ...

  7. HttpClient连接池设置引发的一次雪崩

    事件背景 我在凤巢团队独立搭建和运维的一个高流量的推广实况系统,是通过HttpClient 调用大搜的实况服务.最近经常出现Address already in use (Bind failed)的问 ...

  8. 低功耗蓝牙BLE之连接事件、连接参数和更新方法

    转自:http://blog.csdn.net/zzfenglin/article/details/51304084 连接事件 在一个连接当中,主设备会在每个连接事件里向从设备发送数据包.一个连接事件 ...

  9. Http持久连接与HttpClient连接池

    一.背景 HTTP协议是无状态的协议,即每一次请求都是互相独立的.因此它的最初实现是,每一个http请求都会打开一个tcp socket连接,当交互完毕后会关闭这个连接. HTTP协议是全双工的协议, ...

随机推荐

  1. Python3基础 file open 打开txt文件并打印出全文

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  2. Java基础部分二

    1.&与&& &位运算符,&&逻辑与运算符&&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式 2.switch ...

  3. hdu 3415 Max Sum of Max-K-sub-sequence 单调队列优化DP

    题目链接: https://www.cnblogs.com/Draymonder/p/9536681.html 同上一篇文章,只是 需要记录最大值的开始和结束的位置 #include <iost ...

  4. CSAPP学习笔记 第一章 计算机系统漫游

    Ch 1.0 1.计算机系统是由硬件和系统软件组成的 2.本书阐述了计算机组件是如何工作的以及执行组件是如何影响程序正确性和性能的. 3.通过跟踪hello程序的生命周期来开始对系统的学习. #inc ...

  5. NOI 08 石头剪刀布

    石头剪刀布(NOI 08) 总时间限制: 1000ms 内存限制: 65536kB 描述 石头剪刀布是常见的猜拳游戏.石头胜剪刀,剪刀胜布,布胜石头.如果两个人出拳一样,则不分胜负. 一天,小A和小B ...

  6. Codeforces Round #189 (Div. 2) D. Psychos in a Line 单调队列dp

    D. Psychos in a Line time limit per test 1 second memory limit per test 256 megabytes input standard ...

  7. c++ 多继承 public

    以下代码会报错 #include <iostream> using namespace std; class Sofa { public: Sofa(); ~Sofa(); void si ...

  8. python 生成元组

    #create a tuple l = [(,), (,), (,)] print(list(zip(*l)))

  9. MongoDB(课时7 逻辑运算)

    3.4.2.2 逻辑运算 逻辑运算主要三种类型:与($and),或($or),非($not.$nor). 范例:查询年龄在20~21岁的学生信息 db.students.find({"age ...

  10. 代码中特殊的注释技术 -- TODO、FIXME和XXX的用处

    借鉴地址:https://www.cnblogs.com/pengyingh/articles/2445826.html 在阅读一些代码时,经常会遇到诸如:TODO.FIXME和XXX的单词,它们是有 ...