2016-05-25 18 views
3

既存のAWSバケットの現在の要求速度を判断して、S3バケット上の標準要求制限値100 QPSに近づいているか遠いかを確認しようとしています。理想的には、私は時間をかけてリクエスト率を見たいと思っています。AWS S3バケットのリクエスト率を表示または計算しますか?

CloudWatchは、この情報を洞察するものではなく、Ruby SDKを使用してバケットのこの情報を取得する方法はないようです。

この情報を表示する方法はありますか? S3ログを解析してログファイルから計算する必要がありますか?

+0

私はバケツの* "100 QPSの標準要求制限" *について認識していません。これのためのあなたの源は何ですか?毎秒100の 'PUT'または' LIST'リクエストを維持すると、パフォーマンスに関する公開された推奨事項が公開されていますが、バケットは毎秒何百という 'GET'リクエストを簡単に処理し、要求レートが時間の経過とともに徐々に増加するにつれて容量が自動的に拡大します。 –

+0

@ Michael-sqlbot http://docs.aws.amazon.com/AmazonS3/latest/dev/request-rate-perf-considerations.html「Amazon S3バケットのワークロードが通常100 PUT/LIST/DELETEを超える場合1秒あたりの要求数が300以上、GET要求数が300を超える場合は、このトピックのガイドラインに従ってパフォーマンスとスケーラビリティを最適化してください」と述べています。これは厳しい制限ではありませんが、時間の。また:私はPUTをやっています。 –

+0

彼らは '503 Slow Down'エラーを吐くことによってあなたを制限します。直感的に言えば、あなたの要求を数えているからではなく、1つ(またはそれ以上)のパーティションがあなたの指数は何らかの速度で起こるかもしれません。私は実際に彼らが文字通り数えているとは思わないし、実際には(ログ分析以外の)この値を調べる方法はありません。私のアプローチは、常にジッタの指数関数的バックオフ(jittery =各待ち時間を±500msの範囲の乱数でパッド)で、httpエラーをキャッチして再試行しています。ガイドライン=より多くのRPSに従ってください。 –

答えて

0

今のところ、AWS S3バケットのリクエスト率を計算するためのAWSのサービスはありません。また、AWS Cloud Watchでのリクエスト率を計算するメトリックもありません。したがって、唯一のオプションは、AWS S3ログファイルを使用してリクエスト率を計算することです。

関連する問題