【发布时间】:2013-02-20 06:31:15
【问题描述】:
在我们的应用程序中,用户可以上传尺寸为 1024 X 768(约 150 KB)的图像。
当用户上传图片时,会发生以下事情:
1)图片上传到临时目录
2)将图像裁剪成四种不同的尺寸。
3)将原始图像及其裁剪图像上传到亚马逊s3服务器。
证明上述过程对用户来说非常耗时。
在使用 xdebug 进行分析后,似乎 90% 的时间都花在了在 amazon s3 上上传图像上。 我正在使用下面给出的方法将图像保存在 amazon s3 存储桶中
public function saveInBucket( $sourceLoc,$bucketName = '', $destinationLoc = '' ) {
if( $bucketName <> '' && $destinationLoc <> '' && $sourceLoc <> '') {
$s3 = new AmazonS3();
$response = $s3->create_object( $bucketName.'.xyz.com',$destinationLoc, array(
'contentType' => 'application/force-download',
'acl' => AmazonS3::ACL_PUBLIC,
'fileUpload' => $sourceLoc
)
);
if ( ( int ) $response->isOK() ) {
return TRUE;
}
$this->ErrorMessage = 'File upload operation failed,Please try again later';
return FALSE;
}
return FALSE;
}
我也想过将图像直接上传到亚马逊 s3,但我不能这样做,因为我还必须将图像裁剪成 4 种不同的尺寸
如何加快或改进图像管理流程。
【问题讨论】:
标签: php image-processing amazon-s3