问题描述
我在 Spring Boot 应用程序中使用 aws-java-sdk(版本 1.11.874)以便将文件上传到 S3。
在我的本地机器上运行时一切正常,上传 75kb 文件需要几毫秒。
但是当我使用相同的配置 aws 帐户将我的应用程序部署到 EC2 (t2.small) 时,应用程序需要 10 多分钟才能上传 75kb 的文件。
public String uploadFile(String keyName,InputStream inputStream,String type) throws NoSuchAlgorithmException,InterruptedException,IOException {
String newFileName = String.format("%s.%s",Utils.generaterandomString("i"),FilenameUtils.getExtension(keyName) == null ? "" : FilenameUtils.getExtension(keyName));
if (type.equalsIgnoreCase("avatar")) {
newFileName = avatarFolder + "avatar/" + newFileName;
} else {
newFileName = avatarFolder + newFileName;
}
PutObjectRequest request = new PutObjectRequest(bucket,newFileName,inputStream,new ObjectMetadata())
.withCannedAcl(CannedAccessControlList.PublicRead);
Upload upload = transferManager.upload(request);
try {
upload.waitForCompletion();
return String.format("https://%s.s3-%s.amazonaws.com/%s",bucket,region,newFileName);
} catch (AmazonClientException e) {
log.info(e.getMessage());
}
return null;
}
有人可以建议我任何解决方案吗?谢谢。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)