Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

httpd mod_proxy_balancer failover failonstatus - transparent switching

I am using mod_proxy_balancer to manage failover of backend servers. Backend servers may return an error code instead of timing out when some other backend service fails such as NFS and we want such servers also to be marked as failed nodes. Hence we are using failonstatus directive.

<Proxy balancer://avatar>
    ProxySet failonstatus=503 
    BalancerMember http://active/ retry=30
    # the hot standby
    BalancerMember http://standby/ status=+H retry=0
</Proxy>

Currently the failover works perfectly with one glitch. When active node fails the user gets a 503 error and from the next request the Standby server takes over.

I dont want even a single request to fail though. Cant mod_proxy failover with out ever returning an error to the client? If active node fails I want mod_proxy to try the Standby for the same request and not just from the subsequent request!

like image 910
Praveen Avatar asked Jun 18 '12 13:06

Praveen


1 Answers

I think you asked this on the Apache HTTPd mailing list but sadly didn't get a satisfactory answer. I've asked almost the same question in ServerFault so I'm joining them together.

https://serverfault.com/questions/414024/apache-httpd-workers-retry

like image 133
David Newcomb Avatar answered Oct 14 '22 05:10

David Newcomb