caching в nginx

Igor Sysoev is at rambler-co.ru
Sat Apr 9 18:13:12 MSD 2005


On Sat, 9 Apr 2005, Serge wrote:

> Игорь, а кэширующие возможности nginx будут включать возможность кэша в 
>памяти?
>Было бы здорово, если можно было на уровне server задать опции кэширования в 
>памяти, то есть размер кэша, алгоритм работы с кэшем, expire time и т.д., а 
>на уровне location задавать возможность кэширования файлов в данном 
>location, макс. размер файла и т.п.
>А то ведь столько памяти освободилось за счет nginx, надо ее использовать! 
>:)
>Наиболее разумным мне тут видится кэширование статического контента. Тех же 
>картинок. 
>Может быть еще имеет смысл подумать об интеграции с memcached сервером.
>В общем, какой roadmap по этому поводу вообще? :)

В текущих планах предполагается кэш в виде файлов и в памяти.
В файлах - ответы proxy и fastcgi, сжатые ответы.
В памяти предполагается держать дескрипторы открытых файлов,
небольшие файлы, mmap, редиректы, скомпилированные ssi-скрипты.

На кэширование будет влиять куки, переменные (например, geo) и тому подобное.

Что касается кэширования статики, то, на мой взгляд, имеет смысл
держать в памяти только мелкие файлы размером до одной страницы или
около того. Статику лучше отдавать sendfile()ом, кэшируя только
открытый дескриптор файла. Совсем уж мелкие файлы (до 1К) лучше
держать в памяти и отдавать writev()ом. mmap() лучше не использовать,
по крайней мере, на FreeBSD, про другие ОСы не скажу.


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





More information about the nginx-ru mailing list