Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: помогите понять логику кеширования и буферизации
Trurl Wrote:
-------------------------------------------------------
> Не могу ничего понять из документации.
>
> Допустим у меня вот такой набор:
> proxy_temp_path /var/lib/nginx/proxy 1 1;
> proxy_cache_path /var/lib/nginx/proxy/cache levels=1:1
> keys_zone=main_cache:256m inactive=42h max_size=5m;
Давайте я попробую объяснить, хотя на уровень гуру не претендую.
max_size=5m задает тот размер, до которого выхотите уменьшить размер своего
кеша, если в нем перестанет хватать памяти для новых запросов,
или до какого размера он опустится при новом старте, когда запустится
фоновый "загрузчик кеша".
Т.е. - сколько вы готовы "хранить вечно"
proxy_temp_path - задает путь, чтобы облегчить в вашей системе перемещение
кешируемых файлов, потому что именно такой метод использован в nginx.
И именно поэтому это должно быть на одной файловой системе, если хотите
чтобы это происходило мгновенно, а не в виде (copy $1 $2; remove $1);
Т.ч. после перемещения файлов ее размер должен быть равен нулю или близко
Вот примерно как это выглядит в реальности для
proxy_cache_path /var/cache/nginx/media_cache levels=2:2
keys_zone=media:8192m inactive=7d max_size=8000m;
proxy_temp_path /var/cache/nginx/proxy_temp 2 2;
4,0K client_temp
4,0K fastcgi_temp
5,2G media_cache --- место под кеш
44M proxy_temp --- место под временные файлы
4,0K scgi_temp
4,0K uwsgi_temp
5,2G итого
Как видим в temp_path нет "копии" тех 5 гиг, что теперь лежат в кеше.
А чтобы не помещать в кеш какие-то файлы, то для этого есть всего одна опция
proxy_no_cache
А уж какие значения вы туда подсунете - то и не будет кешироваться.
Правда желательно будет указать еще proxy_cache_bypass - с такими же
значениями, чтобы nginx не лез за ними в кеш
Posted at Nginx Forum:
http://forum.nginx.org/read.php?21,235634,235674#msg-235674
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|