ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: неблокирующий аплоад



29.03.2013 3:08, Anatoly Mikhailov пишет:
On Mar 28, 2013, at 8:30 PM, Валентин Бартенев <vbart@xxxxxxxxx> wrote:

On Thursday 28 March 2013 23:54:48 Andrey N. Oktyabrski wrote:
On 28.03.2013 18:45, Валентин Бартенев wrote:
On Thursday 28 March 2013 16:34:21 Anatoly Mikhailov wrote:
Вопрос по неблокирующему аплоаду больших файлов, в идеале без
необходимости использовать проксирование на upstream.

2 варианта:
1) nginx-upload-module
2) lua-resty-upload

Первый поломался с выходом nginx 1.3.9
https://github.com/vkholodkov/nginx-upload-module/issues/41 Второй
требует 2 дополнительных модуля (devkit, lua), но еще не
production-ready

Что выбрать?
Пользоваться штатными средствами.

http://nginx.org/r/client_body_in_file_only/ru
Вот бы штатными средствами было вот это реализовано, так можно было бы и
пользоваться:
http://www.grid.net.ru/nginx/resumable_uploads.ru.html

Сделать всякого можно, был бы только спрос.
если хорошо задокументировать, то спрос будет обязательно,
погуглив, можно только найти nginx_upload_module и lua модуль,
но про client_body_in_file так просто не найдешь, хотя если покопать:
- http://forum.nginx.org/read.php?2,223189,223198#msg-223198
- http://forum.nginx.org/read.php?2,227175,227177
- http://mailman.nginx.org/pipermail/nginx/2012-September/035447.html

кстати, сейчас тестируем штатное решение - это то, что нужно, спасибо!

В случае multipart POST запроса и штатного решения бэкенд должен будет распарсить тело запроса из файла, также как и обычно. В случае загрузки большого файла (речь идет про несколько гигабайт) парсинг может занять вполне ощутимое время, в течение которого браузер клиента будет ждать ответа. Помимо всего прочего (подсчет хеш-сумм и возобновляемая загрузка) upload модуль хорош тем, что этот парсинг осуществляет на лету и на бэкенд приходит небольшое тело запроса с уже вычлененным из него файлом, что существенно ускоряет время ответа клиенту и разгружает бэкенд.

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.