Q32 — AWS SAA-C03 第15章

第 32/100 問 | ← 第15章

Q1132. ある企業は、複数のAmazon EC2インスタンス(Auto Scalingグループ内)を用いて、静的コンテンツおよび動的コンテンツを配信するWebサイトを運用しています。動的コンテンツはPHPで開発されています。現在のアーキテクチャでは、Application Load Balancer(ALB)がAuto Scalingグループ内のインスタンスにトラフィックをルーティングしています。ユーザー数の増加に伴い、Webサイトのパフォーマンスが低下しているとの報告があります。企業はWebサイトのパフォーマンス向上を図る必要があります。そこで、企業はAmazon CloudFrontディストリビューションを作成し、Amazon S3バケットをオリジンとして設定しました。 これらの要件を満たすために必要な追加ステップはどれですか?

正解: B. 静的コンテンツをS3バケットにコピーします。既存のALBを第2のオリジンとして設定し、動的コンテンツを配信させます。

解説

Amazon CloudFrontとS3バケットを活用してWebサイトのパフォーマンスを向上させるには、以下の追加ステップが最も適切です: B. 静的コンテンツをS3バケットにコピーし、既存のALBを第2のオリジンとして設定して動的コンテンツを配信する。 解説: ・静的コンテンツをS3に配置:画像、CSS、JavaScriptなどの静的コンテンツをS3バケットに移行することで、CloudFrontによるキャッシュおよびエッジロケーションでの高速配信が可能となり、レイテンシ低減と読み込み時間短縮が実現できます。 ・ALBを第2のオリジンとして活用:CloudFrontにALBを追加のオリジンとして設定すれば、動的コンテンツ(PHPアプリケーションによって生成されるコンテンツ)へのリクエストをALB経由でEC2インスタンスにルーティングできます。これにより、既存のロードバランシング機能を維持しつつ、静的コンテンツの配信最適化も達成できます。 他の選択肢が不適切な理由: A:CloudFront関数は、リクエスト/レスポンスの軽量な変換(例:ヘッダーの追加・改変)に使用されるものであり、バックエンドアプリケーションによる動的コンテンツ生成には対応していません。 C:Lambda@Edgeを用いた動的コンテンツ配信は技術的には可能ですが、ALBがすでに動的リクエストを効果的に処理している状況では、過剰な複雑さと管理コストを招き、不適切な設定によって逆にレイテンシが増加するリスクがあります。 D:S3はオブジェクトストレージサービスであり、動的コンテンツの生成(実行時処理)には対応していません。動的コンテンツはEC2上で動作するPHPアプリケーションによって生成される必要があるため、S3へのコピーは現実的ではありません。 したがって、静的コンテンツと動的コンテンツの両方を効率的に扱い、パフォーマンスを向上させるには、選択肢Bが最適なアプローチです。