Maxim Dounin Wrote:
-------------------------------------------------------
> > инвестигировать
> поведение фрибсд в
> > виртуальной машине, но это
> не по теме).
>
> Если это не в рамках одной
> виртуальной машины, то
> скорее
> исследовать надо сетевую
> подсистему виртуализатора.
> Обычно она не
> блещет и/или имеет в себе
> statefull firewall, со всеми
> вытекающими
> прелестями в виде потери
> соединений при
> переполнении таблицы
> состояний и невозможности
> использования timewait'ов, пока
> не
> протухнет соответствующая
> запись в firewall'е.
Похоже на то. Это ESXi 4.1 и я замечал некоторое несоответствие в поведении freebsd в виртуальной машине и на физической. Время заняться этим.
> > 10.0.0.1 - - [01/Dec/2011:15:08:40 +0200] "GET
> /fcgi-proxy/ HTTP/1.1"
> > 504 183 "-" "JoeDog/1.00 [en] (X11; I; Siege
> 2.70)" "-"
> > "10.0.0.77:9003, 10.0.0.77:9004 504, 504 -
> 10.002,10.002" 20.004 SSL:-/-
> > "gzip:-"
> >
> > {skip}
> > причем есть и корректные,
> например:
> >
> > 10.0.0.1 - - [01/Dec/2011:15:06:07 +0200] "GET
> /fcgi-proxy/ HTTP/1.1"
> > 200 33 "-" "JoeDog/1.00 [en] (X11; I; Siege
> 2.70)" "-" "10.0.0.77:9001,
> > 10.0.0.77:9002, 10.0.0.73:9000 504, 504, 200 -
> 10.002, 10.001, 0.006"
> > 20.009 SSL:-/- "gzip:-"
>
> Судя по всему, это одно из
> проявлений вот этого бага:
> http://trac.nginx.org/nginx/ticket/64
Да. Очень похоже это оно. Тогда в продакшин двигать на 1.0.X нельзя пока :(
>> > Поставил nginx 1.1.9. Намного
> лучше, в общем
> > то, что хотелось. На 10000
> соединений 504-х
> > (и 502) нет вообще, а есть
> только 18
> > соединений по 10 секунд:
> >
> > Это потому что 1.1.X
> проверяет нерабочий
> > бэкенд только одним
> запросом. Есть ли
> > планы сделать так же в 1.0.X
> ветке?
>
> Скорее нет, чем да.
> Изменение в целом хорошее,
> но потенциально
> может затронуть работающие
> конфигурации с долгими
> запросами и/или
> 3rd party балансировщиками. А
> чем 1.1.x не устраивает?
Ситуация такая - продакшин сейчас до сих пор на 0.8.54 (балансер). В этой версии я тоже замечал присутствие бага http://trac.nginx.org/nginx/ticket/64 хотя я больше грешил на виртуализацию. С появлением ветки 1.0.X была запланирована миграция на эту ветку и сейчас вроде как время пришло, но появилась задача с fcgi пулом. И теперь оказалось, похоже, смысла мигрировать на 1.0.X нет - потому что для задач балансера этот баг - серьезный.
Насчет 1.1.X. Ну во-первых, ветка позиционируется как девелопмент, соответственно, использовать на продакшине можно только в крайнем случае. Во-вторых, упомянутый вами вопрос с долгими запросами. У меня могут быть тяжелые запросы к базе, надо подумать как изменение в схеме балансинга может на них повлять - судя по всему тем, что "живые" бэкенды будут нагружены больше чем раньше.
3rd балансировщиками не пользуюсь.
Я бы сделал изменение схемы балансировки в 1.0.x опциональным и выключенным по дефолту, если это возможно. Иначе судя по всему, в моем случае, мне придется ждать пока ветка 1.1.X не будет переведена в stable.
> Maxim Dounin
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
---
Igor