httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rainer Jung <rainer.j...@kippdata.de>
Subject proxy health checks [was: Proxying OPTIONS *]
Date Wed, 03 Oct 2007 13:04:52 GMT
Jim Jagielski wrote:
> On Oct 2, 2007, at 5:56 PM, Ruediger Pluem wrote:
>> Slightly off topic, but this gives me the idea that we could use
>> OPTIONS * as some kind of ping / health check for pooled connections
>> in mod_proxy_http before sending a request (at least in the reverse
>> proxy case before sending a request that is not idempotent or after
>> the connection has not been used for a certain amount of time).
>> The current is_connected check has a race condition if the keepalive
>> timer of the backend server kills the connection just after our check
>> and before it received our request.
> 
> :)
> 
> We already do similar with AJP where, right after 
> ap_proxy_connect_backend()
> it does a quick check. I think we even discussed having HTTP do something
> similar awhile ago...

It would be nice to have the health check running asynchronously from 
the normal request handling (error detection for idle connections, 
before requests fail). Even more important, the recovery test could be 
done independently from request handling.

For this one would need some scheduling service (independent threads, 
API extension for callbacks). A simple start could be something like the 
monitor() hook. Although that one depends on the type of MPM and the 
module scheduling service should not be decoupled from the timing of 
important internal procedures.

Regards,

Rainer

Mime
View raw message