ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: верните server_name *; # пожалуйста :)



Anton Yuzhaninov пишет:
On 28.05.2008 16:08, Монашёв Михаил wrote:
Здравствуйте, Максим.

В nginx'е за счёт accept-фильтров можно пытаться выиграть только
немного памяти и чуть-чуть процессора. Но цена за это - соединения, висящие в ядре без какого-либо логирования или контроля (в частности - на них не распространяются timeout'ы, заданные в nginx.conf, а вместо этого действуют tcp timeout'ы по умолчанию). В результате - потерять можно существенно больше, чем выиграть.

А что именно можно потерять? Чем плохи такие соединения?


Каждая tcp-коннекция требует памяти в ядре, а она не резиновая.
Во FreeBSD/amd64, например, нельзя использовать больше 2 Gb KVM.

Но расход памяти будет существенным только если таких коннекций десятки тысяч.

В случае если эти коннекции будет обрабатывать nginx память в ядре они конечно тоже занимают, но к ним переменяется таймаут из nginx.conf который можно уменьшать (при неблагоприятных внешних условиях, например DoS).

то есть в этом случае нужно вместо таймаутов nginx тюнить системные таймауты tcp - это единственный минус получается?



 




Copyright © Lexa Software, 1996-2009.