httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Plüm, Rüdiger, VF-Group" <ruediger.pl...@vodafone.com>
Subject Re: Behaviour of mod_proxy_ajp if CPING/CPONG fails
Date Fri, 05 Sep 2008 15:34:20 GMT
 

> -----Ursprüngliche Nachricht-----
> Von: Mladen Turk 
> Gesendet: Freitag, 5. September 2008 17:07
> An: dev@httpd.apache.org
> Betreff: Re: Behaviour of mod_proxy_ajp if CPING/CPONG fails
> 
> Plüm, Rüdiger, VF-Group wrote:
> 
> > So after the first failed CPING/CPONG we should try again 
> with a new TCP connection
> > and should only return HTTP_SERVICE_UNAVAILABLE if this 
> fails as well. The following
> > (and attached patch) does exactly that. Thoughs to the 
> above and/or to the patch
> > before I commit?
> >
> 
> +1 for the concept.
> However for threaded servers you should call
> ap_proxy_acquire_connection inside retry loop, cause there might
> be available connections inside the pool.

I don't think that this does what you want. If I simply continue to
acquire connections from the pool without returning the faulty ones
back before, other threads might starve because they cannot get connections
from the reslist any longer (not even faulty ones, that they would reopen).
If I return the faulty connection to the reslist, there is some likelyhood
that I get the same connection back within the next acquire as the reslist
is organized as a stack. IMHO this approach would only work if the reslist
was organized as a queue, which it is no longer in order to get the ttl
feature in conjunction with smax working correctly.

Regards

Rüdiger


Mime
View raw message