А РХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev ][Date Next ][Thread Prev ][Thread Next ][Date Index ][Thread Index ]
Re: memory leak by nginx
To : nginx-ru@xxxxxxxxx
Subject : Re: memory leak by nginx
From : Vitaliy Okulov <vitaliy.okulov@xxxxxxxxx >
Date: Thu, 29 Jan 2009 17:13:14 +0300
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:content-type; bh=oBykmDEkG5JcgpvX/viM6mZWE7cGyH6Z96rRGdBa8Bc=; b=jv5Fm+fj0QsNhUgE9D2Tz9MvNLPumB0HbuW4rol/VJmwHYlyz3r6gK0wOgoZSqjPH3 OU1yPfUvNy65Z2ep7999FiAv8spsHSVFhIDGBV5bgvTQll86ZVxRa7eB1IYS9asFf9m2 jpg7ACHBAb+1O5J8Aut0+TGY2oMasm5pwuzZc=
Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; b=aBQW11xI0BEJzokycHX3K51++HQpxhlaDSCOi4FK+R6d7DncCeujZM4DtfR1jaxaF6 OBQPuBIvjv8jxs3y93XDTRqIRAPCju3FdR2qBiPmdYoKf+8JwuarKRcUdPh6gJlmk5pb gpZIO4Zw/qa2D91p1naKgGLr758H5CWoTjgyY=
In-reply-to: <CC50C4A0-8010-48C4-A239-BD5D226AF89A@xxxxxxxxxxxxxx >
References: <b37fe17d0901290218g690a6403r1ea0a5a72e732a78@xxxxxxxxxxxxxx > <CC50C4A0-8010-48C4-A239-BD5D226AF89A@xxxxxxxxxxxxxx >
В сервере 8 гигов памяти + 8 своп. При посещении 5-10 запросов в секунду не думаю что дело в буферах.2009/1/29 Alexey V. Karagodov
<kav@xxxxxxxxxxxxxx >
полный конфиг покажите
у Вас вероятно буфера слишком большие ... прошу понять меня правильно ...
On 29.01.2009, at 13:18, Vitaliy Okulov wrote:
Обновился до nginx 0.6.34 c 0.6.32. Заметил утечки памяти на 1 сервере. ОС
FreeBSD 6.3. Параметры сборки:
nginx version: nginx/0.6.34
configure arguments: --prefix=/usr/local/etc/nginx --with-cc-opt=-I
/usr/local/include --with-ld-opt=-L /usr/local/lib
--conf-path=/usr/local/etc/nginx/nginx.conf
--sbin-path=/usr/local/sbin/nginx --pid-path=/var/run/nginx.pid
--error-log-path=/var/log/nginx-error.log --user=www --group=www
--http-client-body-temp-path=/var/tmp/nginx/client_body_temp
--http-proxy-temp-path=/var/tmp/nginx/proxy_temp
--http-fastcgi-temp-path=/var/tmp/nginx/fastcgi_temp
--http-log-path=/var/log/nginx-access.log --with-http_addition_module
--with-http_dav_module --with-http_flv_module --with-http_realip_module
--with-http_ssl_module --with-http_stub_status_module --with-http_sub_module
Клиентов на данном сервере мало, примерно 5-10 коннекто в секунду. Динамики
нет, то есть обслуживается только статика. После рестарта nginx память
освобождается. В dmesg есть информация:
swap_pager_getswapspace(2): failed
pid 38158 (nginx), uid 80, was killed: out of swap space
swap_pager_getswapspace(16): failed
Так что проблема явно в nginx. Из особенностей могу отметить использование
большой базы geoip адресов.
В чем может быть проблема? Как ее решить?
Конфигурационный файл:
user www;
worker_processes 8;
worker_rlimit_nofile 200000;
#error_log logs/error.log;
#error_log logs/error.log notice;
error_log /var/log/nginx/error.log info;
#pid logs/nginx.pid;
events {
use kqueue;
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
index index.shtml index.html;
log_format main '$remote_addr - $remote_user [$time_local] $request '
'"$status" $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
client_max_body_size 60m;
умножить на 8 вокеров, уже 480 метров ...
#gzip on;
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
include /usr/local/etc/nginx/upstream.conf;
include /usr/local/etc/nginx/geoip.conf;
include /usr/local/etc/nginx/vhosts.d/*.conf;
server {
listen *:80;
server_name xxx;
location / {
root /usr/local/www/nginx;
index index.html index.htm index.shtml;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/local/www/nginx-dist;
}
location /nginx_status {
stub_status on;
access_log off;
allow xxx;
deny all;
}
}
}