Re: Ограничение на число одновременных соединений, но с постановкой лишних в очередь

Олег Петрачёв cronfy на gmail.com
Вс Ноя 29 21:49:44 MSK 2009


> в том случае, когда клиент не дождался и закрыл соединение с nginx`ом -
> разве nginx тогда не убирает свой запрос к apache из очереди запросов ?
> по крайней мере, (насколько мне известно) операционная система
> сама убирает tcp-соединение из очереди ожидающих подключений,
> если клиент со своей стороны закрыл tcp-соединение к серверу.

Тестируем так - запускаем siege с указанием создавать 100 конкурентных
соединений напрямую на апач, без nginx. Обращения идут к скрипту.
который работает 10 секунд. MacClients 6, ListenBackLog 128. После
завершения siege показатели следующие (апач работает на порту 31647):

# netstat -Lan | grep 31647
tcp4  163/0/128      127.0.0.1.31647
# netstat -na | grep 31647 | wc -l
     339

Несмотря на то, что siege давно не работает и всё закрыл, висит
очередь и висят соединения в состоянии CLOSE_WAIT/FIN_WAIT_2. И уходят
они из очереди со скоростью 6 штук в 10 секунд (см. Maxclients и время
работы скрипта выше).

-- 
// cronfy


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