2012-10-22 45 views
0

我在HTTP客户端4.2.1用HttpClient打开套接字太多了?

PoolingClientConnectionManager mgr = new PoolingClientConnectionManager(); 
    mgr.setMaxTotal(20); 
    HttpClient httpclient = new DefaultHttpClient(mgr); 

的客户端下面的代码,然后我有一个尝试......终于和每一个岗位后打电话httpPost.reset。

出于某种原因,我看到该程序占用了110个ESTABLISHED http连接到我的服务器,并在CLOSE_WAIT(非TIMED_WAIT)中连接了235个连接。

我在做什么错?这附近有bug吗?最大连接数应该是20还是我误解了?

感谢, 院长

回答

0

没关系,没关系....有人创建代码不少DefaultHttpClient的,我已经错过了。它似乎现在正在工作,除了现在它不断地为同一主机(同一主机上的不同URL)创建新的套接字,导致吞吐量非常低的性能恶梦:(.... grrrrrr。