proxy_max_temp_file_size вообще не имеет к размеру файлов в кеше никакого
значения
Цитата:
Директива задаёт максимальный размер временного файла для проксированного
ответа. "proxy_max_temp_file_size 0" запрещает создание файла.
Т.е. определяет может ли nginx писать ответ бекенда на диск перед отдачей
клиенту, или ему придется отдавать его на лету.
В том то и дело что это только в теории и
по логике вещей. А на практике, при включенном кешировании, nginx плюет
на proxy_max_temp_file_size и пишет, сколько ему нужно.
вот например процесс выкачки 67M файлика
в середине процесса:
-rw------- 1 nginx nginx 43778048 Jan 28 13:32 7/7/0000000077
... в конце: -rw------- 1 nginx nginx 69885952 Jan 28 13:34 7/7/0000000077
сколько там стоит proxy_max_temp_file_size - по барабану, хоть 0, хоть 8M.
При этом общий объем отдачи клиенту и этот размер никак не коррелируют.
Ответ может быть 10Тер, а размер временного файла 1Мег, тогда nginx может
каждый пришедший 1Мег записывать на диск и потом отдавать клиенту, и все это
в цикле, (пока все не посинеют)))
Хотя никто не сказал, что будет если размер ответа известен сразу и
превышает - nginx может отказаться писать ответ во временный файл, если
сочтет это не эффективным.
Полезность его установки в больше нуля только в одном - если надо разгрузить
бекенды для новых запросов при неторопливых клиентах (или такого вида
атаки)
Но если у вас система обрабатывает 100к запросов, и вы поставили размер в
1мег, то это может потребовать 100Гиг диска для временного хранения
ответов.
И нехилый вобщем disk-io )))