I got this problem when I was creating one HttpClient object for every
request.
The problem was resolved when I created one singleton HttpClient for all
my requests with a MultiThreadedConnnectionManager

HTH

Cheers,
Jaya.


-----Original Message-----
From: Mark Claassen [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, November 28, 2006 10:41 PM
To: 'HttpClient User Discussion'; [EMAIL PROTECTED]
Subject: RE: Many sockets open in CLOSE_WAIT state

I had this error as well, and for me it came from me using the API
incorrectly.  My lesson as a newbie was: follow the examples as closely
as possible.  I found the api very easy to use incorrectly.  However,
when I changed my usage to follow the examples more closely, all my
problems magically disappeared.
 
-----Original Message-----
From: David Cotter [mailto:[EMAIL PROTECTED]
Sent: Tuesday, November 28, 2006 11:29 AM
To: [email protected]
Subject: Re: Many sockets open in CLOSE_WAIT state

On closer inspection there are even more sockets open: For example I
have 20,000 open sockets: 12000 are in ESTABLISHED and 8000 are in
CLOSE_WAIT.

Regards,
David


On Mon, 2006-11-27 at 12:26 +0000, David Cotter wrote:
> > Hi there,
> >
> > I am having a problem with too many open files on my server. I am 
> > using HttpClient v.3.0 and the server application is a proxy web app

> > that retrieves the content using HttpClient and passes it back to 
> > the user
> using
> > a Tomcat servlet.  I am serving 1000s of  different users with 
> > several
> sever
> > requests per second. As time goes on the JVM memory usage steadily
> increases
> > as the number of open files/sockets in CLOSE_WAIT state on the Linux
> machine
> > increases. I can see from inspection that many of the open files are
> socket
> > connection to third party sites opened with HttpClient.
> >
> > For every method executed I use a shared
> MultiThreadedHttpConnectionManager
> > and always call method.releaseConnection().
> >
> > I have instantiated  IdleConnectionTimeoutThread and also have 
> > another thread that occasionally calls:
> > multiThreadedHttpConnectionManager.closeIdleConnections
> (idleTimeoutMillis);
> > multiThreadedHttpConnectionManager.deleteClosedConnections();
> >
> > I have overridden
> > MultiThreadedHttpConnectionManager.releaseConnection()
> > and included a connection.close() in this function but have not seen

> > any results - always steadily increasing open files.
> >
> > I have seen reference to overriding
> > MultiThreadedHttpConnectionManager.releaseConnection () to force 
> > sockets
> to
> > close on this list but nothing concrete as to what to put in the
> overrided
> > function.
> >
> > I would appreciate any help on this.
> >
>
> > Regards,
> > David
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


============================================================================================================================

Tech Mahindra, formerly Mahindra-British Telecom.
 
Disclaimer:

This message and the information contained herein is proprietary and 
confidential and subject to the Tech Mahindra policy statement, you may review 
at <a 
href="http://www.techmahindra.com/Disclaimer.html";>http://www.techmahindra.com/Disclaimer.html</a>
 externally and <a 
href="http://tim.techmahindra.com/Disclaimer.html";>http://tim.techmahindra.com/Disclaimer.html</a>
 internally within Tech Mahindra.

============================================================================================================================

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to