使用HttpClient打开的套接字太多?

使用HttpClient打开的套接字太多?,httpclient,apache-httpclient-4.x,Httpclient,Apache Httpclient 4.x,我在http客户机4.2.1的客户机中有以下代码 PoolingClientConnectionManager mgr = new PoolingClientConnectionManager(); mgr.setMaxTotal(20); HttpClient httpclient = new DefaultHttpClient(mgr); 然后我尝试一下…最后,在每次发布后调用httpPost.reset 出于某种原因,我看到该程序占用了110个到我的服务器的已建立

我在http客户机4.2.1的客户机中有以下代码

    PoolingClientConnectionManager mgr = new PoolingClientConnectionManager();
    mgr.setMaxTotal(20);
    HttpClient httpclient = new DefaultHttpClient(mgr);
然后我尝试一下…最后,在每次发布后调用httpPost.reset

出于某种原因,我看到该程序占用了110个到我的服务器的已建立http连接和235个CLOSE_WAIT(非TIMED_WAIT)连接

我做错了什么?这附近有虫子吗?最大连接数应该是20,还是我弄错了

谢谢,
Dean

好的,没关系……有人在代码中创建了很多DefaultHttpClient,我错过了。它现在似乎正在工作,只是现在它不断地为同一主机(同一主机上的不同URL)创建新套接字,导致吞吐量非常低的性能噩梦:(..grrrr)