hc-httpclient-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From SZÜCS Balazs <Balazs.Szu...@wave-solutions.com>
Subject MultithreadedConnectionManager pooling strategy
Date Thu, 04 May 2006 16:00:43 GMT

I'm using HttpClient 3.0-rc4, and I have a question about the connection
pooling strategy of MultithreadedConnectionManager. The reason for that is
that I use an IdleConnectionTimeoutThread (runs every 60 secs, using a
timeout of 60 secs) configured with a MultithreadedConnectionManager, and
idle connections don't seem to get closed by the
IdleConnectionTimeoutThread. However, on a long time span (overnight) the
pool size decreases, but I would expect a quicker reaction, when my
application is not unter heavy load.

I've taken a look at the source of MultithreadedConnectionManager, and I
realized, that free connections are stored in a linked list. On demand the
next free connection is taken from the BEGINNING of the list, while after
usage the connection is put back to the END of the list. This seems to me a
round robin behavior, and it might prevent connections reaching the
predefined age for being recognized as idle. If there is some load, each
free connection will be used, instead of just using a few of them, and
letting the rest age.

Does that make any sense?

Thank you!


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