美文网首页
httpclient的几个重要的参数

httpclient的几个重要的参数

作者: coder_farmer | 来源:发表于2017-12-08 10:06 被阅读0次

    一、背景

      线上有个支付网关项目,突然发现大量httpclient报错,该httpclient报错是我们主动访问第三方时,报获取连接超时错误。而且都是同一个第三方渠道报错,而其他第三方都没有这个报错。

      走查代码发现,所有的http访问,用的都是同一个httpclient。而因为某个第三方渠道报错,导致连接没有被释放,所以再次访问该渠道的时候就没有连接了。那为什么其他共用该httpclient的渠道没有收到影响呢?这就要讲一下下面几个参数了。

    二、HttpClient的几个重要参数

    MaxtTotal:整个连接池的大小

    CONNECTION_TIMEOUT : 连接超时,指的是建立连接的超时时间

    SO_TIMEOUT : 响应超时,连接建立以后,响应的超时时间

    CONN_MANAGER_TIMEOUT: 连接不够的时候超时时间

    DefaultMaxPerRoute:每个host的连接最大连接数,因为这个参数,所以某个渠道出问题以后,其他渠道的最大连接数不会有影响。(当然这个还是回到maxTotal最大连接池的限制)

    设置http client的重试次数,默认是3次,最好还是禁用

    httpClient.setHttpRequestRetryHandler(new DefaultHttpRequestRetryHandler(0, false));

    还有更多的注意,请大神指教。

    // TODO

    相关文章

      网友评论

          本文标题:httpclient的几个重要的参数

          本文链接:https://www.haomeiwen.com/subject/ubosixtx.html