Q38 — AWS SAP-C02 第3章

第 38/75 問 | ← 第3章

Q263. ある企業が、ユーザーがランダムな写真をアップロード・検索できるWeb向け画像サービスを構築しています。ピーク時の利用では、世界中から最大10,000人のユーザーが画像をアップロードします。その後、サービスはアップロードされた画像にテキストをオーバーレイし、その画像を企業のWebサイト上に公開します。 ソリューションアーキテクトは、どの設計を実装すべきでしょうか?

正解: C. アップロードされた画像をAmazon S3バケットに保存し、S3バケットイベント通知を設定してAmazon Simple Queue Service(Amazon SQS)キューにメッセージを送信します。SQSキューからメッセージを取得して画像を処理し、別のS3バケットに配置するAmazon EC2インスタンスのフェleetを起動します。キューの深さを監視するAmazon CloudWatchメトリクスを用いてEC2インスタンスのスケールアウトを行います。 Amazon CloudFrontを有効化し、オリジンとして処理済み画像を格納するS3バケットを指定します。

解説

このユースケースには、選択肢Cが最も適したソリューションです。アップロードされた画像をAmazon S3バケットに保存することは、非常にスケーラブルかつ耐久性の高いソリューションです。S3バケットイベント通知を設定してAmazon SQSキューにメッセージを送信することで、画像ファイルの非同期処理が可能になります。SQSキューからメッセージを取得して画像を処理し、別のS3バケットに保存するAmazon EC2インスタンスのフェleetを構築できます。また、キューの深さを監視するAmazon CloudWatchメトリクスを活用すれば、必要に応じてEC2インスタンスをスケールアウトできます。さらに、処理済み画像を格納するS3バケットをオリジンとしてAmazon CloudFrontを有効化することで、ユーザーへの低遅延コンテンツ配信が実現されます。 選択肢A:このユースケースでは、Amazon EFSのコストが非常に高くなります。 選択肢B:Amazon SNSはApplication Load Balancer(ALB)をネイティブなサブスクライバーとしてサポートしていません。 選択肢D:データがAmazon EBSボリューム上に保存されるため、データ損失のリスクが存在します。