Q7 — AWS DOP-C02 第1章
第 7/100 問 | ← 第1章
開発者チームがアプリケーションのインフラストラクチャを管理しています。このアプリケーションは、長時間実行されるプロセスを使用して、Amazon Simple Queue Service(SQS)キューからアイテムを処理します。アプリケーションはAuto Scalingグループにデプロイされています。 最近発生した問題として、アイテムの処理時間が長くなりすぎています。キューが予期を超えて膨張し、さまざまなビジネスプロセスが正常に動作しなくなっています。アプリケーションはサードパーティツールにログを記録しています。 チームは現在、Amazon Simple Notification Service(Amazon SNS)トピックをサブスクライブしており、アラート通知に使用しています。キューが予期を超えて膨張した場合、チームに通知する必要があります。 これらの要件を最も効果的に満たすソリューションはどれですか?
- A. 1時間周期のAmazon CloudWatchメトリクスアラームを作成し、平均値が予期値を超えた場合に静的しきい値を設定します。アラームをSNSトピックに通知するように構成します。
- B. 1時間周期のAmazon CloudWatchメトリクスアラームを作成し、静的しきい値を設定して、メトリクス値の合計が予期値を超えた場合にアラームを発火させます。アラームをSNSトピックに通知するように構成します。 ✓
- C. 近似メッセージ数(ApproximateNumberOfMessagesVisible)をSQSキュー属性から取得し、それを新しいCloudWatchカスタムメトリクスとして公開するAWS Lambda関数を作成します。Amazon EventBridgeルールを作成し、5分ごとにLambda関数を呼び出すようにスケジュールします。新しいカスタムメトリクスの合計値が予期値を超えた場合、1時間のCloudWatchメトリクスアラームと静的しきい値アラームを設定します。
- D. 近似メッセージ遅延(ApproximateAgeOfOldestMessage)をSQSキュー属性からチェックし、関数内で定義された予期サイズと比較するAWS Lambda関数を作成します。Amazon EventBridgeルールを作成し、5分ごとにLambda関数を呼び出すようにスケジュールします。近似メッセージ遅延が予期サイズを超えた場合、SNSトピックに通知を送信します。
正解: B. 1時間周期のAmazon CloudWatchメトリクスアラームを作成し、静的しきい値を設定して、メトリクス値の合計が予期値を超えた場合にアラームを発火させます。アラームをSNSトピックに通知するように構成します。
解説
本問は、Amazon SQSキューのモニタリングにおけるコアメカニズムを問うものです。CloudWatchは、SQSキューのネイティブメトリクス(例:ApproximateNumberOfMessagesVisible)を直接サポートしており、カスタムLambdaによるデータ収集は不要です。正しいソリューションは、以下の2点を満たす必要があります:① ネイティブメトリクスを直接使用して遅延を最小化すること、② キューの滞留総量を正確に把握するためにSum統計タイプを使用すること(平均値では瞬間的なピークを捉えられない)。選択肢Bは、1時間周期でメッセージ総数が静的しきい値を超えた場合にアラームを発火させるものであり、AWSのベストプラクティスに合致します。選択肢CおよびDは、カスタムメトリクス導入による複雑さと遅延を招き、選択肢Aは平均値を使用するため、瞬間的なピークを検出できません。