Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: кеширование статик и в RAM
On Mon, Oct 26, 2009 at 03:14:05AM +0300, Executier Godlike wrote:
> > В адрес любителей tmpfs.
> page cache не учитывает популярность тех или иных закешированных
> страниц(хотя, помню, для freebsd Вы делали патч) и ситуация когда
> самые востребованные данные вытеснены менее востребованными
> не редкость. tmpfs может помочь решить эту проблему.
Да, во FreeBSD page cache не учитывает популярность страниц, отданных
sendfile()ом или прочитанных с помощью read(). Популярность учитывается
только при обращеннии к mmap()тым страницам. Тем не менее, какое-то
косвенное LRU там есть, но деталей я не знаю. Ещё нужно учитывать, что
самые популярные страницы, отдаваемые sendfile()ом, будут постоянно
в состоянии wired, а в этом состоянии их не вытесняют.
Нужно также учитывать, что при чтении страницы из tmpfs её нужно
скопировать из tmpfs в кэш, то есть, популярные страницы хранятся
в памяти дважды - в tmpfs и в кэше. Кроме того, у sendfile()а есть
проблемы с tmpfs:
http://www.freebsd.org/cgi/query-pr.cgi?pr=127213
На мой взгляд, единственное оправданное использование tmpfs/md - это,
когда программа может работать только с файлами и для работы характерно
--
Игорь Сысоев
http://sysoev.ru
|