upstream: grant recovery time to backend server

Maxim Dounin mdounin at
Tue Oct 16 10:50:45 UTC 2012


On Tue, Oct 16, 2012 at 06:21:00AM -0400, revirii wrote:

> Hello,
> i have a load balancing setup running with nginx in front and 2 tomcats as
> backend:
> upstream backend  {
>   ip_hash;
>   server;
>   server;
> }
> Runs fine so far, but from time to time one of the tomcats crashes and needs
> to be restarted. As soon as nginx notices that the tomcat is coming up,
> nginx starts to forward requests to the starting-up tomcat. But it would be
> better that the tomcat starts up completly before nginx starts sending
> requests to it.
> Is there any possibility to grant a recovery time to a backend server before
> the backend receives requests? I.e. something like "nginx: hey, i noticed
> that the formerly crashed backend server is coming up, but i'll wait 300s
> before sending requests to it"?

Don't open listen sockets on a backend server unless you think 
it's started and ready to handle requests?

Maxim Dounin

More information about the nginx mailing list