hc-httpclient-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "David Cotter" <davidcot...@gmail.com>
Subject Re: Many sockets open in CLOSE_WAIT state
Date Sun, 03 Dec 2006 23:38:12 GMT
I am using a HttpClient object for every user coming to the system. These
are used to store state like cookies etc. Is there a reason why having many
HttpClient objects in memory would keep many sockets open.

Thanks,
David

On 12/1/06, Jaya Christina B <bjaya@techmahindra.com> wrote:
>
>
> 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:mclaassen@ocie.net]
> Sent: Tuesday, November 28, 2006 10:41 PM
> To: 'HttpClient User Discussion'; davidcotter@gmail.com
> 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:davidcotter@gmail.com]
> Sent: Tuesday, November 28, 2006 11:29 AM
> To: httpclient-user@jakarta.apache.org
> 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: httpclient-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: httpclient-user-help@jakarta.apache.org
>
>
>
> ============================================================================================================================
>
> 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.
>
>
> ============================================================================================================================
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message