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