Как правильно реализовать загрузку больших файлов с одного сервера на другой?

Добрый день.
Проект состоит из двух серверов: front с доступом в интернет и сервер с базой и файлами без интернета. Сервера находятся в одной подсети и имею доступ к друг другу.
Задача в загрузке больших файлов с front на файловый сервер через веб интерфейс.
Реализовано на PHP, Javascript следующим образом:
  • Файл загружается через javascript частями например по 5 мегабайт, каждая часть сразу передается на файловый сервер где собирается в единый файл скриптов загрузчиком.
  • Процесс передачи файла на файловый сервер следующий: Файл загружается на front в tmp папку откуда по http подается запрос к скрипту загрузчику на файловом сервере на копирование временного файла к себе (get_file_contents). По завершении копирования файловый выдает json с данными о файле и статусе, tmp файл удаляется.


Все бы ничего, но процесс копирования например 5 мб занимает 13-20 секунд, что очень долго при загрузке например 2 Гб файла.

Подскажите ,пожалуйста, альтернативные варианты (алгоритмы) такой загрузки?
  • Вопрос задан
  • 41 просмотр
Пригласить эксперта
Ответы на вопрос 1
BojackHorseman
@BojackHorseman Куратор тега PHP
...в творческом отпуске...
а если просто рсинком передать с одного компа на другой какая скорость будет? может у вас одна машина ходит в инет и в локалке с другой на одном сетевом интерфейсе и внешний канал весь забитый. а скорее всего чудо скрипт просто быстрее не в состоянии.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
12 июл. 2020, в 23:05
25000 руб./за проект
12 июл. 2020, в 22:52
750 руб./за проект