====== Организация горячего кэширования статики в nginx ====== Источник - http://sav.ecom24.ru/2010/04/nginx-hot-cache/ В определенных ситуациях требуется быстро раздавать фиксированный набор статических файлов, например при раздаче swf файлов flash/flex приложений. Для того, чтобы снизить нагрузку на диски и уменьшить время реакции, можно организовать горячее кэширование файлов в оперативной памяти: Создадим хранилище для кэша на md диске: mkdir /var/tmp/nginx chown www:www /var/tmp/nginx echo "md /var/tmp/nginx mfs rw,-s128m,late 2 0" >> /etc/fstab mount /var/tmp/nginx Организуем локальный сервер для раздачи статики, с которого будет заполняться кэш: server { listen 127.0.0.1:80; root /usr/local/www/site; } В контексте **http** описываем зону кэширования: proxy_cache_path /var/tmp/nginx/store levels=1:2 keys_zone=STATIC:10m inactive=1d max_size=128m; В контексте **server** добавляем **location** для статики, которую будем кэшировать: location ~\.swf$ { proxy_pass http://127.0.0.1:80; expires 30d; proxy_intercept_errors on; proxy_cache STATIC; proxy_cache_min_uses 1; proxy_cache_valid 1d; proxy_ignore_client_abort on; proxy_temp_path /var/tmp/nginx/tmp; proxy_cache_use_stale updating; } Перегружаем сервер и запрашиваемые swf файлы начинают кэшироваться на md диске: /usr/local/etc/rc.d/nginx reload