ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Потребление памяти воркерами


  • To: nginx-ru@xxxxxxxxx
  • Subject: Re: Потребление памяти воркерами
  • From: Andrey Ignatov <andr.pl@xxxxxxxxx>
  • Date: Tue, 11 Dec 2007 19:36:16 +0300
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:date:from:to:subject:message-id:references:mime-version:content-type:content-disposition:content-transfer-encoding:in-reply-to:user-agent:x-useless-header; bh=p7+OZOZFQY+MreehdqCnYGtNhNEJ7bSDEZ/jlerbszY=; b=YWu89c8J4E2e+qwgxbr03MU7b4CgUmfWt4V/KzKFtvR4Z6fDXIUo7t3ByYfEJZVg384zU5dMcoC6a8qYDDkbLQ+L714tLkkm25NQvoSvsGdIDQV5E/s/AIKVARAN4VzIIUwBByLF7LT9+LSgg1raS32VSd16v4EOa5WOVjOQRjg=
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=date:from:to:subject:message-id:references:mime-version:content-type:content-disposition:content-transfer-encoding:in-reply-to:user-agent:x-useless-header; b=WcAESwVEPNulmH/YILOzRIUpCsqyp3qrlpMCZ9w2ftSAV5KCrbjUU2Rxczp7lY5Ab3bOwIAAtHYQO58fA2dFUJvc4Rndf7aYgRXumIZ4kcPwT3z+W9DpgUqXWOds5Qgq/4Eab4gg0dlrbusFrWfFS2seUEEcwVk/1JYIkNp2DOQ=
  • In-reply-to: <200712111804.08345.isk@xxxxxxxxxxxx>
  • References: <200712111544.57487.isk@xxxxxxxxxxxx> <475EA6A4.5080405@xxxxxxxxx> <200712111804.08345.isk@xxxxxxxxxxxx>

On Tue, Dec 11, 2007 at 06:04:08PM +0200, Olexander Shtepa wrote:
> > > В определённые моменты воркеры занимали 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;

Снизить потребление памяти помогло уменьшение этого таймаута.
Сейчас стоит:

        keepalive_timeout       3;

А выключение keepalive приводило к уменьшению RSS до неск. мегабайт на
каждыйворкер (не более 10). Возможно Вам поможет.

>     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
> 
> Так что не в буферизации дело.

-- 
Andrey Ignatov
Skript, System administrator



 




Copyright © Lexa Software, 1996-2009.