参考資料
事例1. 動的 Web サイト
目的・用途
恒常的にトラフィック増が見込まれる動的な Web サイトを AWS クラウドを使うことで高度な運用を実現したい
この構成での料金試算例
760 ドル(月額)
メモ
-
AWS CertificateManager
- SSL/TLS証明書の購入、アップロード、および更新の自動化
-
Elastic Load Barancing
- アプリケーションへのトラフィックを複数のAZ 内の複数のターゲットに自動的に分散
-
NATゲートウェイ
- private subnetのEC2が外部と通信するためにAZ毎に必要
事例2. スマートデバイス向けゲームアプリ
「マリオカートツアー」DeNA
目的・用途
大量のアクセスが発生しても快適に遊べるスケーラビリティ、ユーザー体験を損なわないパフォーマンス、サーバーとオペレーションコストの最適化をしたい。
「これまでは Amazon EC2 上に MySQL を構築して運用していましたが、スケールアウトやスケールインには人手による対応が必要で、エンジニアの工数が必要だった
メモ
-
CloudFront
- 世界中に配信するアプリなのでCloudFrontを利用
- 世界中に配置されたエッジロケーションがあり、最も近いエッジロケーションからコンテンツが配信されるため、レイテンシーが低くなる
- regionとエッジロケーションは高速なネットワーク接続が繋がっているため、直接regionに接続するより素早い応答ができる
- キャッシュされたコンテンツは、エッジロケーション内のキャッシュサーバーから直接配信される
-
EC2
-
Proxy
- クライアントからのリクエストを受け取り、アプリケーションサーバーにルーティングする
-
API
- アプリケーションサーバーから提供されるWeb APIで、クライアントからのリクエストに応答して、必要なデータを返す。APIは、Webサービスのバックエンドとして使用され、データベースやその他のシステムとの通信を担当することができます。
-
Memcached Elasticsearch
- データのキャッシュをして頻繁にアクセスされるデータの高速化
- データのインデックス作成や複雑な検索クエリの実行が可能で、高速なデータ検索や集計を行う
-
Batch Daemon
- 後処理を担当するプログラムで、ジョブの実行やファイルの圧縮、データベースのバックアップなどのバッチ処理を自動化する
-
Proxy
-
Aurora
- プライマリーとレプリカを複数のAZに置くことで高可用性と高耐久性を実現
事例3. コンテナを利用した Web サービス
https://aws.amazon.com/jp/cdp/ec-container/
目的・用途
負荷の変動幅が大きな動的 Web サイトを検討・運営されており、コンテナを利用した AWS 上での構成例について知りたい
この構成での料金試算例
1,231 ドル(月額)
メモ
-
Amazon Elastic Container Repository
- コンテナのイメージを保存するdocker hub的なもの
- ここにWebサーバとしてNginx コンテナ、AppサーバとしてPHPコンテナを保存
-
Amazon ECS
- コンテナオーケストレーションサービス
-
AWS Fargate
- コンピューティングリソース
-
Amazon CloudWatch Logs
- 各コンテナのLogを保持する
- CloudWatch Container Insightsでコンテナ、タスクやサービス等のメトリクスを収集して可視化
-
RDS・ElastiCache
- それぞれマルチAZで冗長化して可用性・耐久性を実現