From 59f3b6b83a1b409b7cd94c7ea5d9b99dcd4c79dd Mon Sep 17 00:00:00 2001 From: dengfangyuan Date: Fri, 8 Sep 2017 22:50:13 +0800 Subject: [PATCH] use PoolingClientConnectionManager instead of BasicClientConnManager --- .../main/java/org/apache/kylin/common/restclient/RestClient.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/core-common/src/main/java/org/apache/kylin/common/restclient/RestClient.java b/core-common/src/main/java/org/apache/kylin/common/restclient/RestClient.java index 95aa626..f11ab7b 100644 --- a/core-common/src/main/java/org/apache/kylin/common/restclient/RestClient.java +++ b/core-common/src/main/java/org/apache/kylin/common/restclient/RestClient.java @@ -41,6 +41,7 @@ import org.apache.http.client.methods.HttpRequestBase; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.BasicCredentialsProvider; import org.apache.http.impl.client.DefaultHttpClient; +import org.apache.http.impl.conn.PoolingClientConnectionManager; import org.apache.http.params.BasicHttpParams; import org.apache.http.params.HttpConnectionParams; import org.apache.http.params.HttpParams; @@ -113,7 +114,11 @@ public class RestClient { HttpConnectionParams.setSoTimeout(httpParams, HTTP_SOCKET_TIMEOUT_MS); HttpConnectionParams.setConnectionTimeout(httpParams, HTTP_CONNECTION_TIMEOUT_MS); - client = new DefaultHttpClient(httpParams); + final PoolingClientConnectionManager cm = new PoolingClientConnectionManager(); + cm.setDefaultMaxPerRoute(20); + cm.setMaxTotal(200); + + client = new DefaultHttpClient(cm, httpParams); if (userName != null && password != null) { CredentialsProvider provider = new BasicCredentialsProvider(); -- 2.11.0 (Apple Git-81)