hc-httpclient-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Thomas Boniface <tho...@stickyads.tv>
Subject Pool congestion
Date Thu, 07 May 2015 09:22:08 GMT
Hi,

I have an application that receives and HTTP request from a user and
contact multiple external servers. When each external server responded (or
the servlet timeout is reached) and HTTP response is built based on
external servers responses.

I think in such a case, when one of the external server is having trouble
to respond as fast as it should my application will become less and less
responsive: as it will wait to reach servlet timeout to respond to the
client and other client request still incoming will experience the same
problem.

Thinking on how to prevent such cases, I started thinking of ways to
decrease the number of requests made to route having bad performances (by
implementing an exponential backoff mechanism for instance) but it came to
my mind that it may be possible to prevent this just by modifying the pool
configuration. My idea would be to greatly decrease the connection request
timeout (setConnectionRequestTimeout), my understanding is if the http
async client cannot send the request within say 5ms it probably means the
route is currently overloaded.

Is this the right approach to solve this type of scenario ?

Thanks,
Thomas

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