1

我正在尝试使用 java 将分段上传到 Amazon S3。我正在使用以下链接中的代码。

http://docs.aws.amazon.com/AmazonS3/latest/dev/llJavaUploadFile.html

String existingBucketName  = "My Bucket Name"; 
//For the below keyname, an object gets created inside my bucket.
String keyName             = "keyname"; 
//The file that am uploading to s3.
String filePath            = "F:/sample.pptx";   

场景一:要上传的文件大小为31627。我使用 partSize 作为 500000 来指定单个部分的大小。

long partSize = 500000;

由于文件的大小小于 partSize 文件被上传到 S3。

场景二:要上传的文件大小为908800。我正在使用相同的 partSize。

该文件分为两部分,大小如下。

第1部分的大小是:500000 第2部分的大小是:408800

但是,在这种情况下,我看不到对象键被创建。该文件未上传到 s3。我在我的程序中没有看到任何异常。一切正常。我不知道为什么多部分上传失败,没有任何例外。我知道它用于上传较大的文件,但是如果我尝试使用相对较小的部分大小的较小文件,它就不起作用。

4

2 回答 2

0

根据多部分上传文档。

每个部分的大小必须至少为 5 MB,最后一部分除外。分段上传的最后一部分没有大小限制。

很奇怪,上传多个小于 5MB 的部分并没有报错(在测试期间发生在我身上)。

于 2013-12-26T11:08:02.130 回答
0

它似乎仅在 partSize 为 5 MB 时才有效。

长partSize = 5242880;

我将其更改为 4 MB 并尝试了。它不起作用。我也将其更改为 8 MB 并尝试了。那没起效。只有当 partSize 为 5 MB 时它才能正常工作。

于 2013-06-12T20:38:28.237 回答