5

私は、1 日を通してトラフィックが着実に増加している Web アプリケーションを作成しています。読み取り/書き込み制限が特定のパーセンテージ (80% など) に達したかどうかを検出できるアラームを作成し、その制限を増やしたいと考えています。その後、深夜に再び値下げします。

アラームを作成してみました - 「平均」は少し役に立たないようで、常に 1.0 です。「Sum」の方が便利なので、これを使うべきだと思います。また、メトリクス名で Consumed Write/Read Capacity を使用する必要があると思います。

問題:

  • 合計は、その制限に「カウント」の絶対値を使用しているようです。DynamoDB が 100 回の書き込みに設定されていて、80% のアラームを設定すると、書き込みが 80 回ではなく 0.8 回を超えているかどうかがチェックされます。

  • メール トピックをセットアップしましたが、これは正しくありません。トピックが呼び出すことができる関数/コントローラーを作成する必要があると思います。これをどのように設定すればよいでしょうか。Amazon VM が 2 つある場合、両方が呼び出されるのでしょうか、それとも 1 つだけが呼び出されるのでしょうか? または、これは間違ったルートであり、何もコーディングせずに DynamoDB の制限を引き上げるためにイベントに対して実行できる標準的なアクションがあります。(私のSNS知識不足がここに表れているのかもしれません)

4

1 に答える 1

7

Amazonのウィザードを実行してテーブルを作成する場合、 80%のしきい値でアラームを作成し、それをSNSトピックにリンクすることをお勧めします。

内部的には、R / W容量が1の場合、これによりアラームが発生します。

  • ConsumedReadCapacityUnits>=240で60分間
  • ConsumedWriteCapacityUnits>=240で60分間

240 = 0.8*1*60*5つまり、capacity(1) * seconds_in_5_minutes(300) * threshold(0.8)。60分がアラーム期間です。5分まで短縮できますが、これにより誤検知の数が増える可能性があります。

つまり、アラームは、5分の範囲で消費された容量ユニットの合計が少なくとも1時間24のしきい値を超えるたびにトリガーされます。

注:5分はサンプリング期間に対応します。

SNS コンソールでは、トピックに「サブスクライバー」を追加できます。それらは電子メール、HTTP(S)コールバック、...である可能性があります。これにより、複数の人間/マシンに連絡することができます。

スケーリングロジックがトリガーされるたびに、APIを使用して、この式を使用してアラームを自動的に更新する必要があります。

于 2012-09-20T12:42:46.353 に答える