在Apache HttpClient 4.3版本上配置连接空闲超时的最短方法是什么?

我查看了文档,找不到任何东西。我的目标是将开放连接减少到服务器后的最低峰值。

例如在Jetty Client 8.x中,您可以设置httpClient.setIdleTimeout:http://download.eclipse.org/jetty/stable-8/apidocs/org/eclipse/jetty/client/HttpClient.html#setIdleTimeout(long)

最佳答案

超时是在RequestConfig中设置的,因此可以在调用HttpClientBuilder时设置默认值。

例如,假设您的超时变量以秒为单位来创建自定义RequestConfig,则可以执行以下操作:

RequestConfig config = RequestConfig.custom()
    .setSocketTimeout(timeout * 1000)
    .setConnectTimeout(timeout * 1000)
    .build();

然后,您可以像这样设置默认的RequestConfig来构建HttpClient:
HttpClients.custom()
    .setDefaultRequestConfig(config);

10-07 22:57