Re: Течет память при проксировании

Denis F. Latypoff latypoff на yandex.ru
Вс Май 27 19:26:10 UTC 2012


27.05.2012, 23:45, "Maxim Dounin" <mdounin at mdounin.ru>:
> Hello!
>
> On Sat, May 26, 2012 at 10:44:55PM +0700, Denis F. Latypoff wrote:
>
>>  Приветствую.   Пробовал   1.2.0   и   1.3.0,   вот  на  таком  трафике
>>  http://s12.postimage.org/64ix4e8vf/localhost_nginx_request_week.png
>>  процессы  растут  с  70мб  до  1гб  (RSS)  за  сутки.  Трафик  генерит
>
> На каких-то версиях оно вело себя по другому?  Если да - на каких,
> и какие при этом использовались библиотеки и операционная система?
>

Проверил на 1.1.18 и на 1.1.8 (под рукой были) - тоже самое.

>>  самописный  клиент  с  другого  сервера. Keepalive'а нет. Nginx только
>>  проксирует,  бекенд  отдает  очень  короткий  ответ  (байт  200-300  с
>>  заголовками). Этот клиент обязательно дожидается ответа, только потом
>>  закрывает соединение сам. Конфиг такой:
>
> Мне видится два наиболее вероятных варианта:
>
> 1) Оно на самом деле не течёт, и видимый рост RSS - это результат
> работы системного аллокатора, не возвращающего память обратно.
> Если да - то на каком-то более или менее разумном объёме (с учётом
> gzip'а - килобайт 300-500 на соединение, считать максимум по
> соединениям с момента старта) оно должно стабилизироваться.  С
> учётом
>
>>      worker_connections  32768;
>
> тут 1 гиг - не показатель, нужно за количеством соединений
> последить внимательнее.

Вот это подойдет?
http://s8.postimage.org/t92badogl/localhost_nginx_status_day.png
Но думаю, уже не важно, см. ниже ))

>
> 2)
>
>>      geoip_city     /usr/share/GeoIP/GeoIPCity.dat   utf8;
>>      geoip_org      /usr/share/GeoIP/GeoIPASNum.dat  utf8;
>
> Модуль geoip - он, конечно, хороший, но пользуется библиотекой
> от MaxMind'а.  А та известна как минимум тем, что падает на
> некорректных данных в базе.  Так что я бы рекомендовал выключить и
> посмотреть, что будет.

Да, это оно. Без geoip я даже в топе больше вижу как память отдается,
чем выделяется )) 19 метров стабильно. Бывает до 22-23мб вырастет,
но потом опять 19.  С geoip она ни разу не отдавалась, только росла.
А то гиг для такой простой задачи это явно дофига ))

Пойду в libgeoip ковыряться, что у них там течет...

>
> Maxim Dounin

-- 
br, Denis F. Latypoff.



Подробная информация о списке рассылки nginx-ru