Re: Проконсультируйте по отдаче больших файлов.

Валентин Бартенев vbart at nginx.com
Sun Nov 17 02:24:34 UTC 2013


On Sunday 17 November 2013 05:38:33 Ncs wrote:
> Нет, при включенной буферизации данные получаемые с локальных серверов
> записывались в /var/tmp/nginx, что просто убивало системный диск.

Они у вас записываются потому, что директива proxy_max_temp_file_size
имеет значение отличное от нуля.

Читайте документацию: http://nginx.org/r/proxy_max_temp_file_size/ru

Выключив буферизацию совсем, вы вынудили nginx проксировать синхронно,
читать от бэкенда маленькими порциями, сразу же отправляя их.  Что
весьма негативно сказывается на производительности.

Опять же, читайте документацию: http://nginx.org/r/proxy_buffering/ru


> На больших файлах, тем более проксируемых локально, это бесполезно.
> Тут проблема оказалась именно в баге "zero size buf in output while sending
> request to upstream"

Причина этого сообщения также кроется в proxy_buffering off, и, вероятно,
устаревшей версии nginx.

--
Валентин Бартенев


Подробная информация о списке рассылки nginx-ru