Re: проксирование больших файлов

Maxim Dounin mdounin at mdounin.ru
Mon Jul 7 13:57:50 UTC 2014


Hello!

On Mon, Jul 07, 2014 at 02:08:34PM +0700, Eugene Peregudov wrote:

> Доброго времени суток!
> 
> Имеется веб-приложение к хранилищу файлов, преимущественно больших, схема:
> client <--> nginx proxy <--> apache, прокси и бэкенд на разных машинах
> (nginx/1.6.0, ОС RHEL6.5 x64)
> 
> При загрузке большого файла в веб-приложение (10-15Гб), nginx сначала
> целиком буферизует содержимое http-запроса, лишь затем отдает бэкенду...
> 
> на прокси-машине в момент загрузки файла наблюдается большой client_temp,
> соотвественно на клиенте большая задержка:
> #lsof | grep client_temp
> nginx     30802   nginx   ... 8,1 3654929415     394068
> /var/cache/nginx/client_temp/0000000002 (deleted)
> 
> Периодически, на больших файлах браузер отдает клиенту 502 Bad Gateway,
> бэкенд отваливается по таймауту, proxy_buffering off не помогает (по идее и
> не должен...).
> 
> Есть ли возможность отключения полной буферизации проксируемого запроса на
> прокси-машине? т.е. чтобы nginx буферизовал, например, часть запроса от
> клиента, затем открывал соединение с бэкендом и неспеша, кусочек за кусочком
> передавал данные от клиента бэкенду.

Нет, такой возможности в настоящий момент нет.

-- 
Maxim Dounin
http://nginx.org/



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