ПРОЕКТЫ 


  АРХИВ 


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: Потребление памяти nginx'ом



On Tue, Nov 04, 2008 at 11:42:45PM +0200, Alex Vorona wrote:

> 04.11.2008 19:34, Alex Vorona wrote:
> >04.11.2008 19:10, Igor Sysoev wrote:
> >>On Tue, Nov 04, 2008 at 06:49:24PM +0200, Alex Vorona wrote:
> >>
> >>>>>[root@host]# uname -rm
> >>>>>7.0-RELEASE i386
> >>>>Возможно, дело в новом malloc()е. Можно попробовать запустить так:
> >>>>
> >>>>MALLOC_OPTIONS=Dm /usr/local/nginx/nginx
> >>>>
> >>>>И добавить в nginx.conf:
> >>>>
> >>>>env   MALLOC_OPTIONS=Dm;
> >>>>
> >>>>на случай апгрэйда.
> >>>>
> >>>>
> >>>[root@host]# MALLOC_OPTIONS=Dm `which nginx`
> >>>nginx: (malloc) Unsupported character in malloc options: 'D'
> >>>nginx: (malloc) Unsupported character in malloc options: 'm'
> >>>^C
> >>
> >>Это появилось в 7-STABLE в марте 2008.
> >>
> >>
> >аналогичную проблему (с тем же конфигом) наблюдаю на линуксе
> архив конфига вложил, генератор конфига вложил.

Судя по ktrace, malloc() освобождает память не с помощью sbrk() (в случае Dm)
или unmap() (в случае dM), а с помощью madvise(MADV_FREE). То есть,
формально память освобождена, но при необходимости может быть быстро
занята снова. Скорее всего, с Линуксом ситуация такая же.


-- 
Игорь Сысоев
http://sysoev.ru



 




Copyright © Lexa Software, 1996-2009.