Need more details about max_fails and fail_timeout

Sun Yijiang sunyijiang at
Thu Feb 19 06:14:09 MSK 2009

Thanks for your answer.

So to Nginx, an upstream server is either good (operative) or bad
(inoperative).  In good state, if it fails *max_fails* times within *
fail_timeout* period of time, Nginx switches its state to bad.  If not, it
stays good.  In bad state, Nginx will try the server every
*fail_timeout*time, if succeeds, its state is switched back to good,
otherwise it stays
bad.  Nginx only dispatches requests to good servers.  Any problem with this


2009/2/19 Anton Yuzhaninov <citrin at>

> Sun Yijiang wrote:
>> I'm new to nginx, spent a morning reading nginx documentation.  I'm still
>> not clear how nginx determines the status of upstream servers.  Let's say we
>> have some upstream servers, all set to max_fails=3 and fail_timeout=30s.
>>  According to the document, if one server fails 3 times within 30s time,
>> nginx will mark this server to be inoperative and won't direct any request
>> to it.  Is that right?
> Right
>   Then the question is: will nginx try this server again later to see if it
>> recovers?
> Yes, it will try to send requests after fail_timeout.
> So fail_timeout used twice - errors counted for fail_timeout, and upstream
> marked as dead for
> fail_timeout.
> --
>  Anton Yuzhaninov
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the nginx mailing list