Потребление памяти nginx'ом
Igor Sysoev
is at rambler-co.ru
Tue Nov 4 18:52:39 MSK 2008
On Fri, Oct 31, 2008 at 06:16:07PM +0200, Alex Vorona wrote:
> Наблюдаю интересную картину - после релоада nginx кушает в 2 раза больше
> памяти, рестарт/обновление бинарника возвращают потребление в норму.
>
> Судя по http://www.lexa.ru/nginx-ru/msg16264.html, двойное увеличение
> потребления памяти должно быть только на время переконфигурации.
>
> [root at host]# /usr/local/etc/rc.d/nginx start
> Performing sanity check on nginx configuration:
> 2008/10/31 11:50:55 [info] 53360#0: the configuration file
> /usr/local/etc/nginx/nginx.conf syntax is ok
> 2008/10/31 11:50:55 [info] 53360#0: the configuration file
> /usr/local/etc/nginx/nginx.conf was tested successfully
> Starting nginx.
> [root at host]# ps uax|grep nginx
> root 53381 0.0 15.3 158056 156376 ?? Ss 11:51AM 0:00.02 nginx:
> master process /usr/local/sbin/nginx
> apache 53382 0.0 15.3 158056 156420 ?? S< 11:51AM 0:00.02 nginx:
> worker process (nginx)
> root 53399 0.0 0.1 3308 920 p5 S+ 11:51AM 0:00.00 grep nginx
> [root at host]# kill -1 53381
> [root at host]# ps uax|grep nginx
> root 53381 36.5 28.4 293224 291092 ?? Ss 11:51AM 0:04.73 nginx:
> master process /usr/local/sbin/nginx
> apache 53433 0.0 28.4 293224 291100 ?? S< 11:51AM 0:00.01 nginx:
> worker process (nginx)
> root 53435 0.0 0.1 3308 920 p5 S+ 11:51AM 0:00.00 grep nginx
> [root at host]#
> [root at host]# /usr/local/etc/rc.d/nginx restart
> Performing sanity check on nginx configuration:
> 2008/10/31 12:00:08 [info] 54818#0: the configuration file
> /usr/local/etc/nginx/nginx.conf syntax is ok
> 2008/10/31 12:00:08 [info] 54818#0: the configuration file
> /usr/local/etc/nginx/nginx.conf was tested successfully
> Stopping nginx.
> Waiting for PIDS: 53381.
> Performing sanity check on nginx configuration:
> 2008/10/31 12:00:15 [info] 54831#0: the configuration file
> /usr/local/etc/nginx/nginx.conf syntax is ok
> 2008/10/31 12:00:15 [info] 54831#0: the configuration file
> /usr/local/etc/nginx/nginx.conf was tested successfully
> Starting nginx.
> [root at host]# ps uax|grep nginx
> root 54927 0.0 15.3 158056 156316 ?? Ss 12:00PM 0:00.02 nginx:
> master process /usr/local/sbin/nginx
> apache 54928 0.0 15.3 158056 156336 ?? S< 12:00PM 0:00.02 nginx:
> worker process (nginx)
> root 54949 0.0 0.1 3308 924 p5 S+ 12:00PM 0:00.00 grep nginx
> [root at host]#
> Запросы к nginx - только от мониоринга раз в минуту
> [root at host]# curl http://127.0.0.1:8000
> Active connections: 1
> server accepts handled requests
> 15 15 15
> Reading: 0 Writing: 1 Waiting: 0
>
> Около 8к доменов с конфигурацией
>
> server {
> listen 1.2.3.4:80;
> server_name www.domain.tld domain.tld;
> root /home/user/domains/domain.tld/public_html;
> access_log /var/log/httpd/domains/domain.tld.bytes bytes buffer=8k;
> error_log /var/log/nginx/www.domain.tld.error.log warn;
> location / {
> proxy_pass http://1.2.3.4:81;
> proxy_redirect http://www.domain.tld:81
> http://www.domain.tld;
> proxy_redirect http://domain.tld:81 http://domain.tld;
> }
>
> include vhost_static.conf;
>
> }
> [root at host]# grep -v '#' vhost_static.conf
>
> location ~
> \.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js|wmv|wma|mp3|mpg|avi|mpeg|mp4|divx)$
> {
>
> }
> location = /50x.html {
> root html;
> }
> location ~ /\.ht {
> deny all;
> }
> [root at host]#
>
> [root at host]# uname -rm
> 7.0-RELEASE i386
Возможно, дело в новом malloc()е. Можно попробовать запустить так:
MALLOC_OPTIONS=Dm /usr/local/nginx/nginx
И добавить в nginx.conf:
env MALLOC_OPTIONS=Dm;
на случай апгрэйда.
--
Игорь Сысоев
http://sysoev.ru
More information about the nginx-ru
mailing list