.net 上传到AmazonS3的速度非常慢

.net 上传到AmazonS3的速度非常慢,.net,amazon-s3,amazon-web-services,.net,Amazon S3,Amazon Web Services,我使用aws.NETSDK从.NET环境上载文件。 代码在EC2小实例服务器上运行。 代码非常简单和标准 问题是上传~10Mb的文件大约需要10分钟,在我看来这并不好 文件大小约为7-8Mb,分别需要7-8分钟 可以采取哪些措施来改善此问题?上传期间您的CPU负载是多少?如果您打开了SSL,那么可能是因为您的EC2实例占用的CPU太少了。我能找到的解决这个奇怪的上传速度问题的唯一方法是禁用SSL。显然,这是一个非常糟糕的主意,因为您将以明文形式发送您的AWS凭据,但它确实会在上传速度上产生巨大的

我使用aws.NETSDK从.NET环境上载文件。 代码在EC2小实例服务器上运行。 代码非常简单和标准

问题是上传~10Mb的文件大约需要10分钟,在我看来这并不好 文件大小约为7-8Mb,分别需要7-8分钟


可以采取哪些措施来改善此问题?

上传期间您的CPU负载是多少?如果您打开了SSL,那么可能是因为您的EC2实例占用的CPU太少了。

我能找到的解决这个奇怪的上传速度问题的唯一方法是禁用SSL。显然,这是一个非常糟糕的主意,因为您将以明文形式发送您的AWS凭据,但它确实会在上传速度上产生巨大的差异。我希望我能找到其他解决方案。

一定有严重问题,从EC2实例(即在其网络中)上传到S3的速度应该是闪电般的-请向我们展示您非常简单的标准代码以供审查(至少是相关的片段)?当然,这里有。顺便说一句,不幸的是上传到S3并不像你想象的那么快。它可能取决于实例类型,因为每种类型都有其i/o限制。无论如何,代码是:
PutObjectRequest request=new PutObjectRequest();请求。带bucketName(bucketName);请求。WithKey(文件名);请求。WithInputStream(毫秒);AmazonS3 S3Client=AWSClientFactory.createAmazonS3客户端(S3AccessKey、S3SecretKey);S3Client.PutObject(请求)我知道实例类型I/O的含义-也许我通过闪电般的速度在我的注释中添加了太多的颜色,但是,我只是想强调一下,您正在经历的是waaaay太慢;)从某种角度来看,您可能想阅读经常引用的RightScale分析,其结论是:底线[…]是Amazon在EC2和S3周围提供了非常高的吞吐量。[…]这是一个巨大的带宽。我也有同样的问题,上传到S3的速度慢得令人难以置信,尽管我使用的是来自大型EC2实例的PHP。我的笔记本电脑上运行的服务器和访问同一个S3存储桶的服务器速度也很慢。你最终找到解决方案了吗?