Кэш файловой системы

Igor Sysoev is at rambler-co.ru
Sun May 4 19:06:26 MSD 2008


On Sun, May 04, 2008 at 05:54:59PM +0300, Andrey Riabushenko wrote:

> В сообщении от Sunday 04 May 2008 17:28:40 Igor Sysoev написал(а):
> > On Sun, May 04, 2008 at 04:35:35PM +0300, Andrey Riabushenko wrote:
> > > В сообщении от Sunday 04 May 2008 13:29:15 Монашёв Михаил написал(а):
> > > > Здравствуйте, Алексей.
> > > >
> > > > > т.е. нгинх будет занимать места в памяти как мемкеш?
> > > >
> > > > Нет. nginx будет занимать как обычно. А вот его кэш, который является
> > > > файлами на диске, весь будет в кэше файлухи и поэтЕсли есть ссылки, то
> > >
> > > кидайте ому обращений к
> > >
> > > > диску не будет.
> > >
> > > Возникает вопрос, как управлять кешем файловой системы.. Какие sysctl
> > > нужно тюнить? Если есть ссылки, то кидайте, гугл не помог.
> > > Если я правильно понимаю, то кеш vfs нем может превышать размер памяти
> > > выделяемой под ядро ОС(KVA_PAGES), что вообще то довольно ограниченное
> > > количество, больше 2GB не поставить(amd64). И тут хоть 4GB, что 16GB без
> > > разницы.
> > >
> > > P.S. Все выше сказанное касается FreeBSD.
> >
> > Нет, KVA здесь не при чём. Под кэш файлов используется вся память.
> > В top'е страницы файлов могут быть в Active, Inact, Cache и Wired.
> > Соответственно, 16G очень даже лучше 4G.
> >
> > Ограничением с точки зрения KVA выступают vnode, к которым собственно
> > страницы и привязаны. Их можно посмотреть, например, в system -v
> >
> >      85 dtbuf
> >  100000 desvn
> >   42857 numvn
> >   25000 frevn
> >
> > На один vnode расходуется debug.sizeof.vnode байт, для amd64 - 496.
> > Для 100000 vnode нужно 48M KVA/KVM.
> 
> Спасибо. просветили.
> 
> Тогда получается достаточно
> подкрутить kern.maxvnodes и убедиться в том, что памяти в ядре достаточно, я 
> правильно понимаю?

Да.

> Остальнось не ясным как установить размер ФС кеша, хочу под ФС кеш отдать 
> например 10GB(не больше), что для этого сделать надо?

Никак. Ядро использует под кэш любую свободную память. И легко освобождает
её, если она нужна для других целей.


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





More information about the nginx-ru mailing list