ПРОЕКТЫ 


  АРХИВ 


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: resumable upload



Hello!

On Wed, May 08, 2013 at 10:13:05PM +0200, Valery Kholodkov wrote:

> On 05/08/2013 07:03 PM, Maxim Dounin wrote:
> >Hello!
> >
> >On Tue, May 07, 2013 at 09:37:38PM +0200, Valery Kholodkov wrote:
> >
> >>On 03/29/2013 11:46 PM, Anatoly Mikhailov wrote:
> >>>
> >>>On Mar 29, 2013, at 7:38 PM, Andrey N. Oktyabrski <ano@xxxxxxxxx> wrote:
> >>>
> >>>>On 29.03.2013 17:02, Валентин Бартенев wrote:
> >>>>>Просто когда дело заходит о том, что на грамотную реализацию и 
> >>>>>последующую
> >>>>>поддержку этого кода нужно потратить сколько-то человеко-часов, которые 
> >>>>>должен
> >>>>>кто-то оплатить, то часто выясняется, что большинству вопрошающих не 
> >>>>>очень то
> >>>>>оно и нужно было.
> >>>>Большинство вопрошающих вполне устраивал upload_module.
> >>>>
> >>>>P.S. Пожалуй, это тупиковая ветвь дискуссии.
> >>>
> >>>тупиковая, он поломался с nginx 1.3.9, а автор этого плагина забил на 
> >>>поддержку
> >>>уже как полгода.
> >>
> >>Пожалуй, это подходящий момент, чтобы прокоментировать ситуацию.
> >>
> >>Конечно, я мог бы ответить в стиле Валентина Бартенева -- "был бы
> >>спрос, мы бы всё сделали". Иными словами, "дайте денег -- всё
> >>будет".
> >>
> >>Однако, я считатю, что подобный ответ не соответствует моему уровню.
> >>Предлагаемая бизнес-модель не работает, я проверил это на
> >>собственном опыте. В то же время, поддерживать этот модуль на
> >>собсвтенном энтузиазме мне тоже не имеет смысла, так как я уже вырос
> >>из nginx (sic!).
> >>
> >>Nginx меня многому научил, и у меня появилось множество идей того,
> >>как всевозможные вещи реализовать на более высоком уровне, гибче и
> >>доступнее. Более того, часть из своих гипотез я уже успел проверить.
> >>Однако, я пока не уверен, что это выльется в конкретный проект.
> >>
> >>Поэтому, как видите, ситуация не может сдвинутся с мертвой точки,
> >>несмотря на то, что в nginx достаточно было бы поправить несколько
> >>строк.
> >
> >Валерий, если есть конкретные предложения, какие именно строки
> >поправить в самом nginx'е - пожалуйста, выскажи их.
> 
> Чтобы работало достаточно вернуть переменную to_write в
> ngx_http_request_body_t.

Если я правильно понимаю, это - не чтобы работало, а чтобы 
собиралось.  В 1.3.9 появилась поддержка Transfer-Encoding 
chunked, и если такой запрос попадёт в location с upload - всё 
сломается. 

> >Мне, к сожалению, не кажется, что дело ограничется парой строчек.
> >Чтобы нормально работать с телом запроса - нужен, в первую
> >очередь, механизм для этого, чтобы не приходилось, как это сейчас
> >сделано, переизобретать чтение тела запроса в каждом модуле,
> >которому что-то с телом надо сделать.
> 
> >Я потратил некоторое время на создание такого механизма в рамках
> >работы над поддержкой chunked-запросов, но a) upload модуль
> >придётся заметно переписать, чтобы использовать этот механизм и
> >б) скорее всего нужно будет ещё что-то допиливать, чтобы с этим можно
> >было нормально работать из сторонних модулей.
> >
> >Если вдруг есть желание заняться/посмотреть - то патч можно взять
> >тут:
> >
> >http://mailman.nginx.org/pipermail/nginx-devel/2013-March/003492.html
> 
> У меня самого где-то валяется подобный кусок кода. Проблема
> заключается в HTTP pipelining. Я уже два года назад просил механизм
> возвращения буферов в заголовок запроса. Без этого нельзя выйти из
> ситуации, когда за телом запроса незамедлительно следует часть
> заголовка следующего запроса.

Проблемы HTTP pipelining'а - это то, что должен решать (и решает) 
сам nginx в рамках функций чтения тела запроса.  Фильтрам тела 
запроса достаются уже прочитанные от клиента данные.

> >Из известных проблем - оно несовместимо со spdy, у которого, всилу
> >особенностей протокола, совсем своя логика чтения тела запроса.
> 
> -- 
> Best regards,
> Valery Kholodkov
> 
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@xxxxxxxxx
> http://mailman.nginx.org/mailman/listinfo/nginx-ru

-- 
Maxim Dounin
http://nginx.org/en/donation.html

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


 




Copyright © Lexa Software, 1996-2009.