Потребление памяти воркерами
Olexander Shtepa
isk at idegroup.com
Tue Dec 11 19:04:08 MSK 2007
> > В определённые моменты воркеры занимали RSS более 700М.
> > После сигнала -HUP новорождённые воркеры занимают по 4-6 МБ и набирают по ~80 МБ в час каждый.
> > По достижению определённого порога рост прекращается.
> > Могу предоставлю дополнительную информацию.
> >
> proxy_buffering on;
>
> случайно не используется ?
Буферизация включена. Вот настройки:
worker_processes 2;
worker_rlimit_nofile 10000;
timer_resolution 100ms;
events {
use epoll;
worker_connections 10000;
}
http {
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
gzip on;
gzip_min_length 1100;
client_max_body_size 10m;
proxy_read_timeout 1h;
}
Внутри десятка вхостов используется следующая одинаковая конфигурация:
location / {
proxy_pass http://cluster;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-HTTPS "";
proxy_redirect off;
}
и несколько директив rewrite
Остальное по дефолту.
Бекендов у меня 4 и в каждом MaxClients 200
Так что максимально занимаемая память на буферизацию будет:
(1+8)*4к*(200*4)=28800к
Полчаса назад в секции http сделал proxy_buffering off, но всёравно:
USER PID %CPU %MEM VSZ RSS STAT START TIME COMMAND
root 17376 0.0 0.1 16476 3104 S Nov15 0:15 nginx: master process
nginx 29728 4.4 4.8 115192 101288 S 15:33 1:08 nginx: worker process
nginx 29729 4.2 3.6 89768 75868 R 15:33 1:04 nginx: worker process
Так что не в буферизации дело.
More information about the nginx-ru
mailing list