1) Я загрузил формуS3 Bucket Amazon issue
2) Он загружает файл в локальное хранилище move_uploaded_file.
3) Он использует функцию zend putObject для перемещения файла на объект s3.
Все работает нормально, пока размер файла не составляет от 30 МБ до 40 МБ. Проблема в том, что когда я пытаюсь загрузить более крупные файлы, например, 80 МБ, 100 МБ или около того, файл, перемещающийся на s3, занимает много времени, чтобы завершить загрузку. Мой код-то вроде этого:
$orginalPath = APPLICATION_PATH."/../storage/".$fileName;
move_uploaded_file($data['files']['tmp_name'], "$orginalPath");
$s3 = new Zend_Service_Amazon_S3($accessKey, $secretKey);
$s3->putObject($path, file_get_contents($orginalPath),
array(Zend_Service_Amazon_S3::S3_ACL_HEADER =>Zend_Service_Amazon_S3::S3_ACL_PUBLIC_READ));
Можете ли вы помочь, как обрабатывать большие файлы быстро двигаться, я попытался с помощью streamWrapper как этот
$s3->registerStreamWrapper("s3");
file_put_contents("s3://my-bucket-name/orginal/$fileName", file_get_contents($orginalPath));
Но не повезло, это займет же много времени, чтобы переместить файл.
Следовательно, существует эффективный способ быстрого перемещения файла в ведро s3?
В чем проблема? Большие файлы будут ВСЕГДА занимать больше времени, чем файлы меньшего размера. Сеть не волшебна и не может применять turbo boost для больших файлов только потому, что они больше. –