shared http client

This commit is contained in:
Chris Lu 2020-07-20 18:27:11 -07:00
parent 0e341a2a9a
commit b380b9e5d7

View file

@ -9,19 +9,22 @@ import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
public class SeaweedUtil { public class SeaweedUtil {
static PoolingHttpClientConnectionManager cm = new PoolingHttpClientConnectionManager(); static PoolingHttpClientConnectionManager cm = new PoolingHttpClientConnectionManager();
static CloseableHttpClient httpClient;
static { static {
// Increase max total connection to 200 // Increase max total connection to 200
cm.setMaxTotal(200); cm.setMaxTotal(200);
// Increase default max connection per route to 20 // Increase default max connection per route to 20
cm.setDefaultMaxPerRoute(20); cm.setDefaultMaxPerRoute(20);
}
public static CloseableHttpClient getClosableHttpClient() { httpClient = HttpClientBuilder.create()
return HttpClientBuilder.create()
.setConnectionManager(cm) .setConnectionManager(cm)
.setConnectionReuseStrategy(DefaultConnectionReuseStrategy.INSTANCE) .setConnectionReuseStrategy(DefaultConnectionReuseStrategy.INSTANCE)
.setKeepAliveStrategy(DefaultConnectionKeepAliveStrategy.INSTANCE) .setKeepAliveStrategy(DefaultConnectionKeepAliveStrategy.INSTANCE)
.build(); .build();
} }
public static CloseableHttpClient getClosableHttpClient() {
return httpClient;
}
} }