nginx для отдачи больших файлов

Sergej Kandyla sk.paix at gmail.com
Wed Feb 25 14:15:35 MSK 2009


MZ пишет:
>>> Следи чтобы nginx не писал проксируемый контент на диск активно 
>>> (/var/tmp/nginx если не ошибаюсь) - лучше буфера подыми.
>>>
>>
>> Если можно, про этот момент поподробнее. Как определить, насколько 
>> активно он пишет туда и какие буфера нужно поднимать?
>
> смотри директиву proxy_temp_path
> по умолчанию это кажется /var/tmp/nginx - надо смотреть сколько там 
> места занято (du) и как активно используется (gstat) раздел где лежит 
> /var/tmp/nginx
> в общем случае активное использование временных файлов при 
> проксировании крайне не желательно (как и активное использование 
> свопа, например) - эффективнее держать все в памяти
>

такое часто происходит, когда с бекенда передают тяжелую стутику. nginx 
соотвественно пытается ее временно буферизировать в proxy_temp_path.
Вычислить пациента можно по apache httpd-status ( extendedstatus ) - 
смотреть запросы к тяжелой статике.

Это немного лечится через
    proxy_buffering     off;   # т.е. nginx не пытается принять как 
можно быстрее файл от бекенда, а принимает его от бекенда с такой 
скоростью, с какой у нжинкса забирает файл клиент.

но это сводит ускорение проксирования на нет. Поэтому гораздо правильнее 
прописывать статику в отдельные локейшины, чтобы с бекенда подтягивалась 
только динамика.





More information about the nginx-ru mailing list