Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Расход памяти под кшэ-зо ну при proxy_cache_min_uses
Hello!
On Sun, Sep 11, 2011 at 11:56:38AM +0400, Михаил Монашёв wrote:
> Здравствуйте.
>
> Столкнулся с тем, что введя директиву
> proxy_cache_min_uses 2;
> сильно увеличился расход памяти под зону, что приводит подобным
> ошибкам:
> 2011/09/11 11:19:01 [crit] 90687#0: ngx_slab_alloc() failed: no memory in
> cache keys zone "optcache3"
> и последующему уменьшению размера кэша на диске.
>
> Я конечно увеличил размер зоны, но оперативки жалко. Она могла бы
> использоваться файлухой. Да и рассчитать размер зоны теперь можно
> только экспериментальным путём.
>
> Как я понимаю, память используется под хранение информации о файлах,
> которых нет на диске, но которые имеют счётчик обращений. Весьма
> возможно, что эту информацию можно хранить более компактно, чем
> информацию о полноценном закэшированном файле.
Некуда особо компактнее: ключ, а равно все указатели, так или иначе
хранить. Максимум - можно поспиливать несколько полей,
относящихся непосредственно к файлу на диске, таких как fs_size.
Но:
1) это в разы усложнит работу с записями в кеше при необходимости
преобразования записей одного типа в другой;
2) всё равно не позволит влезть в 64 байта на amd64, т.е. по
прежнему будет использоваться 128 байт на запись.
Maxim Dounin
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|