2012-02-12 105 views
2

aws .net sdkを使用して.NET環境からファイルをアップロードします。 コードはEC2小規模インスタンスサーバー上で実行されます。 コードは非常に簡単で標準的です。Amazon S3へのアップロードが極端に遅い

10Mbファイルをアップロードするのに約10分かかります。私の意見では、これはうまくいきません。 約7-8Mbのファイルにはそれぞれ約7-8分かかります。

この問題を改善するにはどうすればよいですか?

+0

EC2インスタンス(つまりネットワーク内)からのS3へのアップロードは、非常に壊れている可能性があります。 - レビューのためのあなたの_容易で標準的なコードを表示するよう注意してください(少なくとも関連するフラグメント)。 –

+0

もちろん、こちらです。 Btw、残念ながら、S3へのアップロードはあなたが思っているほど速くはありません。おそらく、すべてのタイプにI/O制限があるため、インスタンスタイプに依存します。 とにかくコードは: 'PutObjectRequest request = new PutObjectRequest(); request.WithBucketName(bucketName); request.WithKey(fileName); request.WithInputStream(ms); Amazon S3 S3Client = AWSClientFactory.CreateAmazonS3Client(S3AccessKey、S3SecretKey); S3Client.PutObject(request); ' – mark2k

+0

私はインスタンスの入出力の意味を知っています。おそらく、_lightning fast_を使ってコメントに色を入れすぎたかもしれませんが、私は単にあなたが経験していることあなたは、[Amazon EC2とAmazon S3の間のネットワークパフォーマンス](http://blog.rightscale.com/2007/10/28/network-info/)のRightScale分析をよく読んでみたいと思うかもしれませんが、 Amazon EC2とS3の周りに非常に高いスループットを提供しているということです。 [...]これはすべての帯域幅の大部分です._ –

答えて

0

アップロード中のCPUの負荷は? SSLを有効にしている場合は、EC2インスタンスが消費することができるわずかな量のCPUを使い果たしている可能性があります。

0

この奇妙なアップロード速度の問題を解決するために私が見つけた唯一の解決策は、SSLを無効にすることです。 AWSの資格情報を平文で送信するので、これは明らかに非常に悪い考えですが、実際にはという巨大なアップロード速度の差がになります。私は他の解決策を見つけることができたらいいと思う。

関連する問題