Q73 — AWS SAA-C03 第13章

第 73/100 問 | ← 第13章

Q973. 電子商取引企業が、販売リクエストを処理するAPIをホストしています。このAPIのフロントエンドは、Application Load Balancer(ALB)の後ろで実行されるAmazon EC2インスタンス上でホストされており、バックエンドはトランザクションを実行するEC2インスタンス上でホストされています。バックエンド層は、Amazon Simple Queue Service(Amazon SQS)キューによって疎結合されています。同社は、新製品の発売イベント中にリクエスト量が大幅に増加することを見込んでおり、APIが増加した負荷を確実に処理できるようにしたいと考えています。これらの要件を満たすソリューションはどれですか?

正解: D. フロントエンドおよびバックエンドのEC2インスタンスをそれぞれ別のAuto Scalingグループに配置します。フロントエンドのAuto Scalingグループには着信ネットワークトラフィックに基づいてインスタンスを起動するポリシーを設定し、バックエンドのAuto ScalingグループにはSQSキューのバックログに基づいてインスタンスを起動するポリシーを設定します。

解説

正解はDです。フロントエンドおよびバックエンドのEC2インスタンスをそれぞれ別のAuto Scalingグループに配置し、フロントエンドのAuto Scalingグループには着信ネットワークトラフィックに基づくスケーリングポリシーを、バックエンドのAuto ScalingグループにはSQSキューのバックログに基づくスケーリングポリシーを設定します。 解説: A. 製品発売イベント中の増加したトラフィックに対応するため、フロントエンドおよびバックエンドのEC2インスタンス数を2倍にします。需要がシステムの処理能力を上回った場合に未処理の販売リクエストを保持するため、デッドレターキューを作成します。— このソリューションはスケーラブルではなく、インスタンス数の増加に手動介入が必要です。また、バックエンドのスケーラビリティ(主なボトルネック)への対応も不十分です。 B. フロントエンドのEC2インスタンスをAuto Scalingグループに配置します。着信ネットワークトラフィックに対応するために新しいインスタンスを起動するAuto Scalingポリシーを作成します。— このソリューションはフロントエンドのスケーラビリティのみを解決しており、バックエンド(主なボトルネック)のスケーラビリティには対応していません。 C. フロントエンドのEC2インスタンスをAuto Scalingグループに配置します。ALBの前にAmazon ElastiCacheクラスターを追加して、APIが処理する必要のあるトラフィック量を削減します。— このソリューションはフロントエンドの負荷軽減に寄与する可能性がありますが、バックエンド(主なボトルネック)のスケーラビリティには対応していません。 D. フロントエンドおよびバックエンドのEC2インスタンスをそれぞれ別のAuto Scalingグループに配置します。フロントエンドのAuto Scalingグループには着信ネットワークトラフィックに基づいてインスタンスを起動するポリシーを設定し、バックエンドのAuto ScalingグループにはSQSキューのバックログに基づいてインスタンスを起動するポリシーを設定します。— これが正しいソリューションです。フロントエンドとバックエンドを別々のAuto Scalingグループに配置することで、それぞれの固有の要件に応じて独立してスケーリングできます。フロントエンドは着信トラフィックに基づきスケールし、バックエンドはSQSキューのバックログに基づきスケールすることで、製品発売イベント中の増加した負荷にも確実に対応できます。 まとめると、正解はオプションDであり、フロントエンドとバックエンドのEC2インスタンスに対してそれぞれ独立したAuto Scalingグループを活用し、それぞれの特性に最適化されたスケーリングポリシーを適用するものです。