日志用httpclient 超时参数设置从配置文件中获取

This commit is contained in:
zhanghongqing
2018-08-07 14:17:29 +08:00
parent 78bfd4dc5e
commit a1978864b3
3 changed files with 19 additions and 13 deletions

View File

@@ -42,6 +42,7 @@ import org.springframework.web.servlet.support.RequestContext;
import com.alibaba.fastjson.JSON;
import com.nis.exceptions.MaatConvertException;
import com.nis.util.Constants;
import com.nis.util.Encodes;
/**
@@ -226,10 +227,6 @@ public class HttpClientUtil {
private static CloseableHttpClient httpClient = null;
private static RequestConfig requestConfig;
public static final int HTTP_SOCKET_TIMEOUT= 300000;
public static final int HTTP_CONNECT_TIMEOUT= 10000;
public static final int HTTP_CONNECT_REQUEST_TIMEOUT = 50000;
public static final int HTTP_CONNECT_RETRY_TIMES = 3;
//http 连接池
public static CloseableHttpClient getHttpClient() {
if (httpClient == null) {
@@ -240,14 +237,14 @@ public class HttpClientUtil {
// 将每个路由基础的连接增加到20
cm.setDefaultMaxPerRoute(20);
requestConfig = RequestConfig.custom()
.setSocketTimeout( HTTP_SOCKET_TIMEOUT)
.setConnectTimeout( HTTP_CONNECT_TIMEOUT)
.setConnectionRequestTimeout( HTTP_CONNECT_REQUEST_TIMEOUT)
.setSocketTimeout( Constants.HTTP_SOCKET_TIMEOUT)
.setConnectTimeout( Constants.HTTP_CONNECT_TIMEOUT)
.setConnectionRequestTimeout( Constants.HTTP_CONNECT_REQUEST_TIMEOUT)
.build();
httpClient = HttpClients.custom()
.setConnectionManager(cm)
.setDefaultRequestConfig(requestConfig)
.setRetryHandler(new DefaultHttpRequestRetryHandler( HTTP_CONNECT_RETRY_TIMES, false))
.setRetryHandler(new DefaultHttpRequestRetryHandler( Constants.HTTP_CONNECT_RETRY_TIMES, false))
.build();
}
return httpClient;