Chunks upload

 Публичный пост

Взываю к коллективному разуму. Кто чем пользуется для upload и почему? В File API я сходил на чанки порезал. А вот чем чанки с той стороны ловить и клать в файл? Ну и конечно же с offload. А то что-то модулей разной степени законченности я нашел, но хотелось бы послушать и других людей.

Я смотрел следующие модули

Что бывает еще?

14 комментариев 👇
Yury Katkov, миддл формошлёп 3 августа 2020

Вроде не дурак, а ничего не понял. Кто кому что и зачем посылает?

  Развернуть 1 комментарий
Akim Glushkov, Батька-траблшутер 3 августа 2020

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

  Развернуть 1 комментарий

Окей. Пишу задачу подробнее. Со стороны frontend имеем поле загрузки файла на сервер. Далее надо загрузить файл на сервер с отображением прогресс бара и использованием chunks так-как файл может быть вплоть до 10 гигабайт. Кроме отображения требуется использование генерации и проверки 256 битной хеш суммы по ГОСТ 34.311-95 чанков и конечным итогом общая хеш сумма. Дальше она используется для генерации подписи PKS#7. Генерация хеш суммы производится и на frontend и на backend.

  Развернуть 1 комментарий

@norguhtar, звучит как торрент

  Развернуть 1 комментарий

@ganqqwerty,ох если бы. Надо то все в web по верх http сделать. Обычный процесс загрузки данных.

  Развернуть 1 комментарий

@norguhtar, а в чем проблема разбить файл на чанки, отправлять чанки на бекенд с идентификатором загрузки(приходит после загрузки первого чанка) и чек-суммой, а уже не бекенде читать чанки потоком и писать в файл в зависимости от идентификатора загрузки?

Уверен, что реализация загрузки есть для большинства популярных фреймворков.

  Развернуть 1 комментарий

@mikaakim, @norguhtar, можно даже на чанки не разбивать, а лить одним потоком, с докачкой при ошибках.
Вот пример протокола: https://tus.io

  Развернуть 1 комментарий

@755, как вариант, автор хочет чанки, так вот и предложение в конкретном решении. O Tus не слышал - поизучаю

  Развернуть 1 комментарий

@mikaakim, проблемы нет. Но я не хочу нагружать backend этой фигней. Я хочу чтобы nginx за меня это делал. И спрашиваю именно про варианты с ним или другим сервером это позволит уменьшить нагрузку.

  Развернуть 1 комментарий

@755, эммм он льет чанками.

  Развернуть 1 комментарий

@norguhtar, нагружать бекенд чем? Если у вас на бекенде не реализована поддержка загрузки больших файлов (банально, client_max_body_size в NGINX будет 10 мб), то вы хоть на голову встаньте - упретесь в ограничения.

  Развернуть 1 комментарий

@mikaakim, при загрузке чанками достаточно не кидать чанк больше 10мб

  Развернуть 1 комментарий

@norguhtar, я перечитал пост про "проблемы нет", но, так и не понял, если вам, вдовесок нужно еще вычислять хэш-суммы, да и еще по гостам, тогда вам не обойтись без бекенда.

Если не хотите нагружать своих разработчиков, то запилите свой бекенд для загрузки файлов.

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

  Развернуть 1 комментарий

@mikaakim, если первый вариант посмотреть там embedded lua как раз с посдчетом сумм. Добавить еще подсчет сумм по госту я знаю как. Так что видимо просто возьму nginx-big-upload и запилю на его базе.

  Развернуть 1 комментарий

😎

Автор поста открыл его для большого интернета, но комментирование и движухи доступны только участникам Клуба

Что вообще здесь происходит?


Войти  или  Вступить в Клуб