ПРОЕКТЫ 


  АРХИВ 


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: too many open files



On Mon, 6 Mar 2006, L0rda wrote:

On 01.03.2006, at 11:31, L0rda wrote:

нарисовалась такая проблема,
nginx не может открыть более чем 500 лог-файлов,
по сигналу -HUP не перегружает конфиг,
а выдает ошибку 24: Too many open files.

nginx.conf:  worker_rlimit_nofile 15000;

df -i
Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/dev/sda1            15794176  840958 14953218    6% /
/dev/shm              219846       1  219845    1% /dev/shm
/dev/sda2            1048576   15442 1033134    2% /var

sysctl -a|grep file
fs.file-max = 500000
fs.file-nr = 11820      0       500000

ulimit -n 15000

Чтобы перегрузить конфиг пришлось отключить несколько лог-файлов.

Возможно кто-то встречался с подобной проблемой?

Это где-то ограничение в ядре. В Линуксе я не силён, так что сказать не могу.

Я обошел проблему с помощью модуля map, но тут нашлась другая проблема, приведенный в документации пример работает некорректно:

http://sysoev.ru/nginx/docs/http/ngx_http_map_module.html
   map  $http_host  $name  {
       hostnames;

       default          0;

       example.com      1;
       *.example.com    1;
       test.com         2;
       *.test.com       2;
   }


Конкретнее - не работают вайлдкарды, всегда выдается default значение если запрос идет на www.example.com например.

Можно привести строку из access_log, в формате которого были бы две
переменные: $http_host и $name ?


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



 




Copyright © Lexa Software, 1996-2009.