Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: resumable upload
On May 8, 2013, at 9:13 PM, Valery Kholodkov <valery+nginxru@xxxxxxxxxxx> 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.
>
>> Мне, к сожалению, не кажется, что дело ограничется парой строчек.
>> Чтобы нормально работать с телом запроса - нужен, в первую
>> очередь, механизм для этого, чтобы не приходилось, как это сейчас
>> сделано, переизобретать чтение тела запроса в каждом модуле,
>> которому что-то с телом надо сделать.
>
>> Я потратил некоторое время на создание такого механизма в рамках
>> работы над поддержкой chunked-запросов, но a) upload модуль
>> придётся заметно переписать, чтобы использовать этот механизм и
>> б) скорее всего нужно будет ещё что-то допиливать, чтобы с этим можно
>> было нормально работать из сторонних модулей.
>>
>> Если вдруг есть желание заняться/посмотреть - то патч можно взять
>> тут:
>>
>> http://mailman.nginx.org/pipermail/nginx-devel/2013-March/003492.html
>
> У меня самого где-то валяется подобный кусок кода. Проблема заключается в
> HTTP pipelining. Я уже два года назад просил механизм возвращения буферов в
> заголовок запроса. Без этого нельзя выйти из ситуации, когда за телом запроса
> незамедлительно следует часть заголовка следующего запроса.
не проверял, но есть мнение, что один сторонний патч nginx-upload-module
работает с nginx 1.4.0
https://github.com/vkholodkov/nginx-upload-module/issues/45
>
>> Из известных проблем - оно несовместимо со spdy, у которого, всилу
>> особенностей протокола, совсем своя логика чтения тела запроса.
>
> --
> Best regards,
> Valery Kholodkov
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@xxxxxxxxx
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|