httpclient连接池管理,你用对了?
一、前言 为何要用http连接池那?因为使用它我们可以得到以下好处: 因为使用它可以有效降低延迟和系统开销。如果不采用连接池,每当我们发起http请求时,都需要重新发起Tcp三次握手建立链接,请求结束时还需要四次挥手释放链接。而链接的建立和释放是有时间和系统开销的。另外每次发起请求时,需要分配一个端口号,请求完毕后在进行回收。 使用链接池则可以复用已经建立好的链接,一定程度的避免了建立和释放链接的时间开销。 二、连接池使用 public static void init() { //1.创建连接池管理器 PoolingHttpClientConnectionManager connectionManager = new PoolingHttpClientConnectionManager(60000,//1.1 TimeUnit.MILLISECONDS); connectionManager.setMaxTotal(1000);//1.2 connectionManager.setDefaultMaxPerRoute(50);//1.3 //2.创建httpclient对象 httpClient = HttpClients.custom() .setConnectionManager(connectionManager)//2.1 .disableAutomaticRetries