Как ускорить процесс загрузки файлов в PHP?



@FastClick

Использую следующий код для загрузки файлов:

<form action="file-upload.php" method="post" enctype="multipart/form-data">
  Файлы:<br />
  <input name="userfile[]" type="file" /><br />
  <input name="userfile[]" type="file" /><br />
  <input type="submit" value="Отправить" />
</form>

Загрузка 10 Мб выполняется за 40 секунд, что довольно много. В то же облако Яндекс, Мэл.ру загрузка происходит почти моментально.

Код в файле file-upload.php выполняется очень быстро, менее, чем за несколько секунд, но вот дело именно в загрузке файлом после нажатия на кнопку Отправить. Как можно ускорить загрузку файлов? Скорость канала на сервере — 200 Мбит/с, на клиенте — 300 Мбит/с. Пинг от клиента до сервера 20-30.


Решения вопроса 2



@ThunderCat Куратор тега PHP

Скорость канала на сервере — 200 Мбит/с

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

Что делать?
1) Пнуть провайдера и спросить про скорость аплоуда.
2) Если молчат — проверить самостоятельно, например замерить скорость загрузки файла курлом.
3) Проверить загрузку через фтп/сфтп
4) Много думать, ругаться с провайдером
5) Профит


Ответы на вопрос 1



@zkrvndm

Попробуй отправить файл в составе JSON, в base64 кодировке, вдруг быстрее будет.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *