Re: Скачкообразный рост потребляемой памяти при включении slice
Zaynullin
nginx-forum на forum.nginx.org
Пн Сен 26 14:15:09 UTC 2016
Здравствуйте.
Обнаружили избыточное потребление памяти при включенном модуле
lua-nginx-module и кешировании range запросов.
Подробности можно найти по ссылке:
https://github.com/openresty/lua-nginx-module/issues/872
Maxim Dounin Wrote:
-------------------------------------------------------
> Hello!
>
> On Tue, Aug 02, 2016 at 04:43:44AM -0400, Zaynullin wrote:
>
> > Тогда скажите, пожалуйста, на что будет использоваться память, если
> все
> > запросы и соответственно подзапросы завершатся?
>
> Если все запросы завершаться - то память использоваться не будет
> (и будет освобождена), однако с точки зрения ядра может оставаться
> выделенной nginx'у. Зависит от поведения и настроек системного
> аллокатора, а равно от размеров используемых буферов.
>
> Одна из основных проблем при использовании slice-фильтра состоит в
> том, что nginx не умеет повторно использовать буфера из
> подзапросов, и для каждого подзапроса выделяются свои
> proxy_buffers и output_buffers. Соответственно запрос файла в 1
> гигабайт при использовании слайсов в 1 мегабайт размером требует
> 1024 подзапросов, каждый - со своими буферами. В предположении
> буферов по умолчанию это
>
> (2 * 32k + 8 * 4k) * 1024 == 96m
>
> Т.е. даже с минимальными буферами по умолчанию на один запрос
> потребуется почти 100 мегабайт памяти. Именно поэтому
> рекомендуется делать слайсы достаточно большого размера.
>
> Кроме того, стоит подумать про использование sendfile, это
> позволит не использовать output_buffers и существенно сэкономит
> память при отдаче ответов из кеша.
>
> --
> Maxim Dounin
> http://nginx.org/
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
Posted at Nginx Forum: https://forum.nginx.org/read.php?21,268615,269852#msg-269852
Подробная информация о списке рассылки nginx-ru