linux, aio memory usage

proforg proforg at maloletka.ru
Fri Oct 16 22:08:30 MSD 2009


Что, действительно, больше ни у кого nginx с aio / directio под
линухом не жрёт память ?
Я один тут такой неудачнег ?

2009/10/15 proforg <proforg at maloletka.ru>:
> День добрый !
>
> После включения aio nginx временами начал "отжирать" всю доступную
> память на сервере.
> Памяти немного - 4Gb но и воркеров всего 4.
>
> через 40 минут после запуска:
> USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
> root      2641  0.0  0.6 105992 27464 ?        Ss   15:25   0:00
> nginx: master process /usr/sbin/nginx
> www-data  2642  0.6 10.3 495964 418672 ?       S    15:25   0:16
> nginx: worker process
> www-data  2644  0.6  9.7 474572 397280 ?       R    15:25   0:16
> nginx: worker process
> www-data  2645  0.5 10.3 496348 419180 ?       S    15:25   0:16
> nginx: worker process
> www-data  2646  0.5 10.4 501336 423956 ?       S    15:25   0:16
> nginx: worker process
>
> параллельно с памятью растёт и "open files"
>
> В логах, соответственно, вижу примерно следующее:
>
> 2009/10/14 11:18:19 [notice] 2667#0: signal 17 (SIGCHLD) received
> 2009/10/14 11:18:19 [alert] 2667#0: worker process 2670 exited on signal 9
> 2009/10/14 11:18:19 [notice] 2667#0: start worker process 9686
> 2009/10/14 11:18:19 [notice] 2667#0: signal 29 (SIGIO) received
>
> Linux hunterscash.com 2.6.26-2-amd64 #1 SMP Wed Aug 19 22:33:18 UTC
> 2009 x86_64 GNU/Linux
>
> nginx version: nginx/0.8.20
> configure arguments: --conf-path=/etc/nginx/nginx.conf
> --error-log-path=/var/log/nginx/error.log
> --pid-path=/var/run/nginx.pid --lock-path=/var/lock/nginx.lock
> --http-log-path=/var/log/nginx/access.log
> --http-client-body-temp-path=/var/lib/nginx/body
> --http-proxy-temp-path=/var/lib/nginx/proxy
> --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --with-debug
> --with-file-aio --with-http_stub_status_module
> --with-http_addition_module --with-http_random_index_module
> --with-http_flv_module --with-http_ssl_module --with-http_dav_module
> --with-http_realip_module --with-http_secure_link_module
> --with-http_xslt_module --with-http_addition_module
> --with-http_image_filter_module --with-http_geoip_module
> --add-module=mod_zip-1.1.4
> --add-module=nginx_uploadprogress_module-0.5
> --add-module=nginx_upload_module-2.0.10
>
> единственное изменение к в конфигах которое сделал - на 5 сайтах
> включил aio / directio
> таким вот образом:
>
>    location /video/
>    {
>        internal;
>        root /home/www/beachhunters.com/members/;
>
>        aio             on;
>        directio        1;
>        output_buffers  1 128k;
>
>        set $orig_type 'video';
>        post_action /download_stop;
>    }
>
> и вот таким:
>
>    location ~* ^.+\.(avi|wmv|mpg|mpeg|mp4)$
>    {
>        aio             on;
>        directio        1;
>        output_buffers  1 128k;
>
>        root /home/fhg;
>        if ($invalid_referer) { return   403; }
>    }



-- 
Aleksej Besciokov
EMail/JID: proforg at maloletka.ru
phone: +7 495 7853149





More information about the nginx-ru mailing list