【发布时间】:2017-08-23 12:06:09
【问题描述】:
我正在使用 transferUtility 类通过 .NET 中的输入流将文件上传到 S3。问题是,上传一个 4MB 的文件大约需要一分钟。我尝试了 transferUtility.Upload 和 S3Client.PutObject ,上传时间似乎没有改变。代码如下:
WebRequest.DefaultWebProxy = null;
this.S3Client = new Amazon.S3.AmazonS3Client(accessKeyId, secretAccessKey, endPoint);
this.transferUtility = new TransferUtility(this.S3Client);
Amazon.S3.Transfer.TransferUtilityUploadRequest transferRequest = new TransferUtilityUploadRequest();
transferRequest.BucketName = s3Bucket;
transferRequest.CannedACL = Amazon.S3.S3CannedACL.PublicRead;
transferRequest.InputStream = (Stream)fileStream;
transferRequest.Key = newFileName;
transferRequest.Headers.Expires = new DateTime(2020, 1, 1);
this.transferUtility.Upload(transferRequest);
任何帮助将不胜感激。
谢谢你,
【问题讨论】:
-
您是否测试了互联网连接,以确保不是这样?
-
是的,我在 2 个不同的本地服务器和一个远程服务器上尝试过/没有任何变化
-
如果您尝试使用小得多的文件(例如 200kb)会发生什么?它仍然需要很长时间,还是更快?一个 8mb 的文件呢?这需要两倍的时间吗?
-
我刚刚测试了上传一个356kb的excel文件,耗时6秒