SAA-C03高パフォーマンスなアーキテクチャの設計HARD単一選択

ある企業が、Amazon ECS(Fargate)で動作するコンテナアプリケーションのコールドスタート(タスク起動時間)を短縮したい。現在はトラフィックが増加してから新しいタスクが追加されるまでに 2〜3 分かかっており、その間のレスポンスタイムが悪化している。最も適切なソリューションはどれか。

  1. A. Application Auto Scaling のターゲット追跡ポリシーで ALB のリクエスト数(ALBRequestCountPerTarget)を指標として使用し、より早い段階でスケールアウトトリガーがかかるようしきい値を低く設定する。また、ECS サービスの最小タスク数を増やしてコールドスタートを起こさない構成にする。
  2. B. Amazon CloudFront を ECS の前段に配置してリクエストをキャッシュし、ECS へのリクエスト数を削減する。
  3. C. EC2 起動タイプに変更してインスタンスの事前プロビジョニングを行い、コンテナ起動時間を短縮する。
  4. D. ECS タスク定義のコンテナイメージを軽量化(Alpine Linux ベース等)し、イメージプルの時間を短縮する。
解答と解説を見る

正解: A

スケールアウトのトリガーを早めることで、トラフィックが増加しきる前に新しいタスクを追加し始められる。さらに最小タスク数を増やして常に一定数のタスクを維持することで、増加時に既存タスクが処理を負担しながら新タスクが起動できる。これら2つの組み合わせがコールドスタート問題への総合的な対策になる。選択肢DのAlpine Linux によるイメージ軽量化はコールドスタート時間の短縮に有効だが、それだけでは 2〜3 分の起動時間を数十秒以内に抑えることは難しく、根本的なスケーリング戦略の改善が必要。選択肢CはEC2 起動タイプへの変更でインスタンスプロビジョニングが必要になり、運用複雑性が上がる。Fargate での問題解決の方が望ましい。選択肢BのCloudFront キャッシュは動的 API レスポンスのスケーリング問題には直接対応できない。

▸ この試験を本気で演習する(全150問・無料)