AWS上で高可用、高性能、安全なPHPアプリケーションを実行する方法を理解できる。

  1. Amazon Route 53はDNSを解決してエンドユーザーのリクエストをルーティングする。
  2. Amazon CloudFrontはグローバルなポイントオブプレゼンスを活用してコンテンツをキャッシュし配信を加速する。CloudFrontはSSL終端も処理し、SSL証明書を自動的に作成・更新するAmazon Certificate Managerと統合する。
  3. AWS WAFはCloudFrontおよびApplication Load Balancerと統合し、OWASPトップ10のアプリケーション脆弱性を緩和する。
  4. Application Load BalancerはHTTP/Sリクエストをプライベートサブネットで実行されているEC2インスタンスにルーティングする。
  5. Amazon Linux 2 AMIにはPHPやAWS SDK for PHPなどの必要なバイナリが含まれる。
  6. Amazon Linux 2 AMIにインストールされたAmazon CloudWatch Agentがアプリケーションログ、追加のホストレベルメトリクス、カスタムビジネスメトリクスをストリーミングする。
  7. Amazon EC2 Auto ScalingがCPUやメモリなどのメトリクスに基づいてインスタンスの起動を管理する。コスト最適化のためにAmazon Gravitonインスタンスを使用する。
  8. Systems Manager Session Managerを使用して、AWSコンソール上のウェブベースのセッションでEC2インスタンスに接続する。SSHポートのキーペアを開く必要はない。
  9. データベース認証情報はAWS Secrets Managerに安全に保存される。PHP用AWS SDKを使用して、アプリケーションコードがIAMロールを通じてSecrets Managerに保存された認証情報を取得する。
  10. アプリケーションコードは、使い慣れたGit CLIを使用してAWS CodeCommitに安全に保存される。
  11. AWS CodePipelineがCI/CDを実装し、新しいEC2インスタンスの起動時にトリガーされるAWS CodeDeployフックを使用してコードデプロイメントをオーケストレーションする。
  12. Amazon ElastiCache for Redisがセッションデータをキャッシュする。
  13. Amazon Aurora Multi-AZが高可用性を実現する。アプリケーションは障害時に自動的にフェイルオーバーを処理するDNSエンドポイント経由で接続する。Auroraリーダーエンドポイントが読み取り操作を処理し、Auroraライターインスタンスの負荷をオフロードする。
  14. Amazon Elastic File System(Amazon EFS)がAuto Scalingグループとウェブコンテンツを保存・共有する。