- AWS ソリューションライブラリ›
- AWS での GameLift のテストに関するガイダンス
AWS での GameLift のテストに関するガイダンス
概要
仕組み
これらの技術的詳細には、このソリューションを効果的に使用する方法を示すアーキテクチャ図が掲載されています。アーキテクチャ図は、主要なコンポーネントとその相互作用を示し、アーキテクチャの構造と機能の概要を段階的に示しています。
Well-Architected の柱
上記のアーキテクチャ図は、Well-Architected のベストプラクティスを念頭に置いて作成されたソリューションの例です。完全に Well-Architected であるためには、可能な限り多くの Well-Architected ベストプラクティスに従う必要があります。
ツールキットとサンプルゲームのどちらも Infrastructure as Code で完全にデプロイされているため、手動での作業によるエラー、および変更をデプロイする労力が削減します。
API Gateway のサーバーレスウェブコンソール API は、 Cognito ユーザープールに対する AWS ID およびアクセス管理 (IAM) ベースの認証によって保護されています。
API Gateway のサーバーレスサンプルゲームバックエンドは、プレイヤーのゲスト ID を安全に検証するために IAM ベースの認証で保護されています。
GameLift のゲームサーバーは、クライアントとサーバーの通信に使用されるポートへのアクセスのみを許可します。バックエンド Lambda 関数は必要なサービスにのみアクセスできます。
データは DynamoDB テーブルに保存され、オンデマンドのキャパシティー割り当てを利用して、需要の変化に応じて自動的にスケーリングされます。
ソリューションバックエンドサービスは、インスタンスを自動的にスケーリングする Lambda を使用します。
サンプルゲームのバックエンドは、需要の変化に対応するために GameLift Target ベースの自動スケーリングをサポートしています。
API Gateway 、 Lambda 、 DynamoDB 、 Fargate などのマネージド型のサーバーレステクノロジーを利用することで、使用したリソースに対してのみ支払いが発生し、ソリューションの保守に必要な運用労力を削減できます。
このソリューションは任意のリージョンにデプロイでき、 CloudFront を利用してウェブコンソールのエンドユーザーのレイテンシーを削減します。
バーチャルプレイヤータスクを Fargate Spot で起動すると、テストのコストを削減できます。
ウェブコンソールとサンプルゲームバックエンドはサーバーレステクノロジーを利用しているため、請求が発生するのは使用したリソースに対してのみです。
ウェブコンソールのバックエンドは Lambda と API Gateway のネイティブスケーリング機能を利用し、 DynamoDB テーブルではオンデマンドの容量割り当てを使用してリソースが需要に一致するようにします。
サンプルゲームのバックエンドは GameLift Target ベースの自動スケーリングをサポートし、必要なリソースを最小限に抑えます。
このガイダンスはマネージドサービスを幅広く使用しているため、平均的な使用率を維持する責任は AWS に移されています。
サンプルゲームのバックエンドは GameLift Target ベースの自動スケーリングをサポートし、必要なリソースを最小限に抑えます。ゲームセッションを最小数のサーバーインスタンスに配置することで、リソース使用率は一貫して高く保たれます。
このガイダンスは、マネージドサービスを広く利用することにより、環境への個々の影響を軽減します。
ゲームサーバーをスポットフリートに起動し、バーチャルプレイヤータスクをファーゲートスポットで起動することで、未使用のリソースによる持続可能性への影響をさらに減らすことができます。
自信をもってデプロイ
デプロイの準備はできていますか? GitHub のサンプルコードで詳細なデプロイ手順を確認し、そのままデプロイするか、またはニーズに合わせてカスタマイズしましょう。