nginx-0.3.47

Igor Sysoev is at rambler-co.ru
Wed May 24 09:08:48 MSD 2006


On Wed, 24 May 2006, Anton Ladokha wrote:

>> Изменения в nginx 0.3.47 23.05.2006
>> 
>>     *) Добавление: директива upstream.
>> 
>
> А что является признаком неработоспособности бэкенда?

proxy_next_upstream  error  timeout  invalid_header
                      http_500  http_503  http_404;

По умолчанию

proxy_next_upstream  error  timeout  invalid_header;

error - ошибка при соединении, при передаче запроса или при чтении заголовка
         и первой части ответа;
timeout - таймаут при соединении, при передаче запроса или при чтении
         заголовка и первой части ответа;
invalid_header - неправильный или пустой заголовок ответа;
http_500 - 500 ответ;
http_503 - 503 ответ;
http_404 - 404 ответ.

Нужно учесть, что переход к следующему бэкенду возможен только до начала
передачи ответа клиенту. Если ошибка произойдёт уже после того, как
начата передача ответа клиенту, то переход невозможен и соединение с
клиентом просто закрывается.

Параметр http_404 позволяет хранить какие-то файлы только на одном из
бэкендов. В этом случае nginx будут перебирать все бэкенды, пока не получит
другой ответ или же бэкенды не закончатся - в этом случае клиенту будет
передан ответ 404.


После proxy_upstream_max_fails бэкенд считается не рабочим, и к нему
не будет обращений в течение proxy_upstream_fail_timeout.

По умолчанию

proxy_upstream_max_fails     1;
proxy_upstream_fail_timeout  10s;

Переход по http_404 не делает бэкенд нерабочим.


> Можно ли задать таймаут ожидания на открытие порта бэкенда?

proxy_connect_timeout  60s;
proxy_send_timeout     60s;
proxy_read_timeout     60s;


То же самое применимо и к fastcgi_...


Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list