Закачать тяжелые файлы

bruto

Новичок
Здравствуйте!

Подскажите есть ли какой нибудь "красивый" способ закачки тяжелых файлов (через форму пользователя) - более 100мб.
Или все упирается исключительно в настройки сервера и php.ini?

Спасибо!
 

AnrDaemon

Продвинутый новичок
uploadprogress это модуль, позволяющий получить в JS прогресс закачки, но к самой закачке он никак не относится, т.е. вообще.
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
@bruto, на клиенте бить на фреймы в JS и объединять на сервере. На сервере для хранилища можно взять ClickHouse, Swift или промежуточно хранить куски в Redis.
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
@fixxxer, кто возьмет фронт-серверов пачку, тот получит разброс чанков по разным серверам :)

я как-раз занимаюсь этой задачей, на нескольких десятках серверов все не так просто
 
Последнее редактирование:

fixxxer

К.О.
Партнер клуба
В таких случаях часто удобнее отдать хост конкретного upload-сервера, а балансировать на уровне генерации хостнейма.
Тем более, все равно обычно аплоад-сервер - это отдельная роль, там какая-нибудь конвертация и аплоад на сторадж.
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
@fixxxer, выделение серверов для аплоада не решает проблему обеспечения data integrity для случая, например, race condition чанков. Чем-то в CAP нужно жертвовать, и явно не целостностью. Поэтому нужен единый источник знаний о чанках, загружаемых через любой сервер.
 
Последнее редактирование:

fixxxer

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

grigori

( ͡° ͜ʖ ͡°)
Команда форума
протокол поможет в самой передаче, а чанки надо координировать на уровне сервера - или общая распределенная ФС вроде hadoop, или хранилище в памяти вроде редиса, или базка с хорошей репликацией наподобие постгреса/ClickHouse
 

fixxxer

К.О.
Партнер клуба
если один аплоад всегда лить на один сервер, можно обойтись и локальной фс

upd: а если нет - я бы предпочел какой-нить ceph
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
нельзя - SPOF, да и количество одновременных соединений на порядок больше 10k
 

A1x

Новичок
с чанками или без чанков - все упирается в браузер. Браузер тупо виснет при попытках аплоада файлов сколько нибудь больше 1 ГБ
Ну может с чанками виснет чуть позже :)
 
Сверху