Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Утечка файл дескр ипторов?
Igor Sysoev wrote:
>>Сейчас кстати кол-во свободных дескрипторов устаканилось:
>>cat /proc/sys/fs/file-nr
>>1993 969 104032
>>Я буду следить за ситуацией, lsof и /proc/<pid>/fd нам помогут :)
Докладаю:
cat /proc/sys/fs/file-nr
1993 861 104032
Число занятых дескрипторов потихоньку растет.
ls /proc/<pid>/fd |wc -l
281
Вчера вечером было меньше 200 - колебалось в районе 170.
lsof -n |grep nginx |grep <pid> |grep TCP |wc -l
62
lsof -n |grep nginx |grep <pid> |grep REG |wc -l
223
Наконец, самое интересное:
lsof -n|grep nginx|grep REG|awk '{print $9}'|sort|uniq -c|sort -nr
213 /home/ads/website/index.php
4 /usr/local/nginx/logs/error.log
2 /var/log/httpd/ads-error_log
2 /usr/local/nginx/sbin/nginx
2 /usr/lib/libz.so.1.1.4
2 /lib/tls/libc-2.3.2.so
2 /lib/libnss_files-2.3.2.so
2 /lib/ld-2.3.2.so
1 /home/ads/website/banners/medusapoweranalyzerplus01.swf
Что бы это значило? index.php просто перенаправляет на /admin/index.php
Может, что-то с директивой index или fastcgi_index?
Вот как они используются в конфиге:
location ~* ^.+\.(php|phtml)$ {
fastcgi_pass localhost:1234;
fastcgi_root /home/ads/website;
fastcgi_index index.php;
fastcgi_connect_timeout 10;
fastcgi_send_timeout 2m;
fastcgi_read_timeout 3m;
fastcgi_header_buffer_size 64k;
fastcgi_buffers 8 32k;
fastcgi_busy_buffers_size 64k;
fastcgi_temp_file_write_size 256k;
fastcgi_x_powered_by off;
}
location / {
root /home/ads/website;
index index.php index.htm index.html;
expires 30d;
}
> Да, судя по всему, второе поле означает число свободных file handles
> из тех что уже были выделены (первое число). Я просто тыкнул в две ссылки
> в Гугле и прочитал про unused. Но в любом случае, в системе не
> использовалось одновременно больше 1993 файлов. Стало быть, это не утечка,
> а limit. А что показывает nginx при запуске в самом начале про
> getrlimit(RLIMIT_NOFILE) ?
Так и утечка будет упираться в лимит точно так же, так что это не
показатель.
2005/03/16 04:33:13 [info] 10874#0: getrlimit(RLIMIT_NOFILE): 1024:1024
|