Q92 — AWS SAA-C03 第11章
第 92/100 問 | ← 第11章
Q792. ある企業が、大規模なWebアプリケーションをサーバーレスなマイクロサービスアーキテクチャに再設計しようとしています。このアプリケーションはAmazon EC2インスタンス上で動作し、Pythonで記述されています。企業は、Webアプリケーションのコンポーネントの1つを選定し、マイクロサービスとして試験的に実装することにしました。そのコンポーネントは、1秒あたり数百件のリクエストを処理します。企業は、PythonをサポートするAWSソリューション上でこのマイクロサービスを作成・テストしたいと考えています。また、このソリューションは自動スケーリングをサポートし、インフラストラクチャと運用管理の負担を最小限に抑える必要があります。これらの要件を満たすソリューションはどれですか?
- A. 最新版のAmazon Linuxオペレーティングシステムを実行するEC2インスタンスのスポットファleetとAuto Scalingを活用する。
- B. 高可用性構成を有効化したAWS Elastic BeanstalkのWebサーバー環境を利用する。
- C. Amazon Elastic Kubernetes Service(Amazon EKS)を活用し、自己管理型EC2インスタンスのAuto Scalingグループを起動する。
- D. カスタム開発したコードを実行するAWS Lambda関数を利用する。 ✓
正解: D. カスタム開発したコードを実行するAWS Lambda関数を利用する。
解説
大規模Webアプリケーションをサーバーレスなマイクロサービスアーキテクチャへ再設計し、Python対応・自動スケーリング・最小限のインフラストラクチャ・最小限の運用負荷という要件を満たすソリューションとして最も適しているのは、以下の選択肢です: D. カスタム開発したコードを実行するAWS Lambda関数を利用する。 AWS Lambdaは、完全なサーバーレスコンピューティングサービスであり、本シナリオの要件に完全に適合します。LambdaではPython(およびその他の対応言語)でカスタムコードを記述・実行でき、サーバーのプロビジョニングや管理を一切必要としません。また、着信リクエスト量に応じて自動的にスケールし、高いスケーラビリティと可用性を保証します。 他選択肢が不適切な理由は以下の通りです: A. スポットファleetとEC2 Auto Scalingの利用:スポットインスタンスはコスト削減に有効ですが、EC2インスタンスの管理を伴うため、「最小限のインフラストラクチャ・運用負荷」という目標に反します。さらに、EC2のAuto Scalingの管理は、サーバーレスソリューションと比較して複雑さが増します。 B. AWS Elastic BeanstalkのWebサーバー環境の利用:Elastic BeanstalkはWebアプリケーションのデプロイ・管理を簡素化しますが、依然として基盤となるインフラストラクチャ(例:EC2)の管理が必要です。Lambdaのような完全なサーバーレスソリューションと比べ、インフラ・運用負荷は大きくなります。 C. Amazon EKSと自己管理型EC2インスタンスの利用:EKSはコンテナオーケストレーションとスケーラビリティを提供しますが、基盤となるEC2インスタンスの管理・スケーリングを自ら行う必要があります。これは、Lambdaのような完全サーバーレスソリューションと比べ、運用負荷が明確に高くなります。 したがって、サーバーレスマイクロサービスアーキテクチャ、Python対応、自動スケーリング、最小限のインフラストラクチャ、最小限の運用負荷というすべての要件を満たすソリューションは、 D. カスタム開発したコードを実行するAWS Lambda関数を利用する。です。