upstream fail_timeout

Sergey Kobzar sergey.kobzar на itcraft.org
Пт Окт 21 12:52:02 UTC 2011


On 10/21/11 15:41, Maxim Dounin wrote:
> Hello!
>
> On Fri, Oct 21, 2011 at 02:46:45PM +0300, Sergey Kobzar wrote:
>
>> On 10/20/11 15:59, Sergey Kobzar wrote:
>>> Конфиг:
>>>
>>> proxy_connect_timeout 5;
>>>
>>> upstream backend {
>>> server 10.0.0.1 max_fails=3 fail_timeout=300s;
>>> server 10.0.0.2 max_fails=3 fail_timeout=300s;
>>> ip_hash;
>>> }
>>>
>>> location / {
>>> proxy_pass http://backend;
>>> proxy_next_upstream error timeout http_502 http_504;
>>>
>>> proxy_set_header Host $host;
>>> proxy_set_header X-Real-IP $remote_addr;
>>> proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
>>> }
>>>
>>> Оба бэкенда в дауне (полностью лежат). В не зависимости от числа
>>> запросов и времени между запросами, каждый раз жду ответа по 10 секунд.
>>>
>>> Хотя... каждый четвертый ответ приходит сразу.
>>>
>>> Что не так? Почему оба сервера не признаются не работающими в течении
>>> 300 сек?
>>>
>>> nginx/1.0.6
>>
>> No ideas?
>
> Если nginx обнаруживает, что все бекенды в дауне, он сбрасывает
> счётчики ошибок, и очередной запрос снова пытается идти на
> бекенды.

Максим, спасибо.

Плохо.

У меня задача - если все бэкенды в дауне, выводит custom error page. А 
получается при proxy_connect_timeout 5 и 4х бэкендах, пользователь будет 
ждать 2 секунд.

Решения я так понимаю нет?

>
> Maxim Dounin
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru



Подробная информация о списке рассылки nginx-ru