Question#24(SAP-C02)

Question#24(SAP-C02)

ある会社は、オンプレミスのデータセンターで 3 層構造の Web アプリケーションを稼働させています。

  • フロントエンドは Apache Web サーバーで提供
  • ミドル層は モノリシックな Java アプリケーション
  • ストレージ層は PostgreSQL データベース
最近のマーケティングキャンペーン中、顧客が注文を行えなくなる障害が発生しました。アプリケーションがクラッシュし、分析の結果、すべての層が過負荷となっていたことが判明しました。アプリケーションは応答しなくなり、データベースは 読み取り処理の集中によりキャパシティ上限に達していました。すでに同様のキャンペーンが近いうちに複数予定されています。 ソリューションアーキテクトは、このアプリケーションを AWS に移行する計画を策定しなければなりません。 ソリューションは 最大限のスケーラビリティを実現し、運用負荷を最小化する必要があります。 この要件を満たす手順の組み合わせはどれですか?(3つ選択)

(2つ選択)

正解:A, C, E

背景課題 プロモーション時に全層が過負荷、特に DB は読み取り集中で容量上限に達して停止。要件は最大限のスケーラビリティ運用負荷の最小化、かつ AWS への移行。

フロントエンド
  • A(S3 + CloudFront) を選択 静的アセットを Amazon S3 に配置し、Amazon CloudFront でグローバル配信することで、Web サーバー層のスケール課題を根本解消。エッジキャッシュによりオリジン負荷を極小化し、オートスケールやパッチ適用などの運用も最小化できる。
  • B(EC2 + ASG + EFS) は運用負荷が高く、Web サーバー台数管理・OS パッチ・EFS 管理が必要で A より非効率
アプリケーション(ミドル層)
  • C(Elastic Beanstalk) を選択 モノリシックな Java アプリをそのまま再ホストでき、Auto Scaling・ヘルスチェック・ローリング更新などを マネージドで提供。最小の改修と運用労力でスパイクに追従。
  • D(Fargate コンテナ化) は有力だが、コンテナ化のリファクタリングが必要で初期工数・運用複雑性が増すため、要件の「運用負荷最小化」に対して C の方が適合
データベース(ストレージ層)
  • E(Aurora PostgreSQL + リードレプリカのオートスケーリング) を選択 Amazon Aurora PostgreSQL はスケールアウト可能で、リードレプリカ/リーダーエンドポイントにより読み取り負荷を水平分散。オートスケーリングでプロモーションのスパイクに自動対応し、マネージド運用で手離れが良い。
  • F(EC2 へリフトアップ)」は垂直スケール依存で限界が早く、バックアップ/フェイルオーバー/パッチ等の運用負担が大きい
まとめ
  • A:S3+CloudFront でフロントの配信をサーバーレス&高スケール化
  • C:Elastic Beanstalk で Java モノリスを最小改修でマネージド・オートスケール化
  • E:Aurora PostgreSQL(リードレプリカ自動増減)で読み取り集中に強い DB 層へ刷新
この A + C + E の組み合わせが、最大のスケーラビリティ最小の運用労力で要件を満たします。

コメント

コメント

コメントする

目次