Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: upstream backup, как ведёт себя сервер?
> Доброго времени суток.
> Возник вопрос по upstream и серверам с пометкой backup.
>
> Положим существует несколько записей server в upstream помеченных как
> backup и несколько не помеченных как backup, пример ниже. Вопрос - как
> будет вести себя nginx?
http://sysoev.ru/nginx/docs/http/ngx_http_upstream.html#upstream
"Если при попытке работы с сервером произошла ошибка, то запрос будет передан
следующему серверу и так до тех пор, пока не будут опробованы все работающие
сервера."
> в смысле как он будет выбирать backup (полагаю
> случайно?) и как будет выбирать следующий backup если первый backup не
> ответил.
http://sysoev.ru/nginx/docs/http/ngx_http_upstream.html#upstream
"Если при попытке работы с сервером произошла ошибка, то запрос будет передан
следующему серверу"
имеется ввиду следующий сервер в конфиге
> то есть вопрос по сути - как работает директива
> fcgi_next_upstream с backup серверами? и ещё один впорос - как работает
> директива fcgi_next_upstream с обычными серверами (не backup), если она
> прошла уже по всем апстримам и не получила положительного результата:
http://sysoev.ru/nginx/docs/http/ngx_http_upstream.html#server
"backup ? помечает сервер как запасной сервер. На него будут передаваться
запросы в случае, если не работают основные сервера."
> будет ли она пытаться бесконечно получить результат от серверов или
> будет переключится на backup-ы?
http://sysoev.ru/nginx/docs/http/ngx_http_upstream.html#upstream
"Если не удастся получить успешный ответ от всех серверов, то клиенту будет
возвращён результат работы с последним сервером."
> если переключаться на бэкапы - то что
> дальше? error_page?
http://sysoev.ru/nginx/docs/http/ngx_http_upstream.html#upstream
"Если не удастся получить успешный ответ от всех серверов, то клиенту будет
возвращён результат работы с последним сервером."
> upstream backend {
> server 127.0.0.1:1030 max_fails=1 fail_timeout=10s;
> server 127.0.0.1:1031 max_fails=1 fail_timeout=10s;
>
> server 127.0.0.1:1032 backup max_fails=1 fail_timeout=10s;
> server 127.0.0.1:1033 backup max_fails=1 fail_timeout=10s;
> }
|