кеширование статики в RAM

Igor Sysoev is at rambler-co.ru
Mon Oct 26 10:11:22 MSK 2009


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





More information about the nginx-ru mailing list