Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: max_fails=7 fail_timeout=10s
Hello!
On Mon, Mar 03, 2008 at 02:45:03AM +0300, Denis Shaposhnikov wrote:
Никак не пойму. Имеет вот такая конфигурация:
proxy_connect_timeout 30;
proxy_next_upstream error timeout invalid_header http_500;
upstream backend {
server 127.0.0.1:8080 max_fails=7 fail_timeout=10s;
server 127.0.0.2:81 backup;
}
Смотрю access.log:
"127.0.0.1:8080, 127.0.0.1:8080" "30.000, 0.098"
Т.е. nginx отправил запрос на 127.0.0.1 и после того, как сработало
событие http_500, отправил на 127.0.0.1 опять. Почему? Ведь в upstream
127.0.0.1:8080 указано один раз. Означает-ли указанные max_fails и
fail_timeout, что nginx будет пытаться отправить запрос на 127.0.0.1
семь раз? Не, не понимаю. Разъясните пожалуйста поведение nginx?
Это баг в реализации backup серверов. Если поставить max_fails=0
(пофиксив ещё один баг по дороге), то при полностью неработающих
бекендах nginx сейчас сваливается в такой ситуации в бесконечный цикл.
Maxim Dounin
|