メインコンテンツに移動

AWS ソリューションライブラリ

AWS での GameLift のテストに関するガイダンス

概要

このガイダンスは、デベロッパーが Amazon GameLift テストツールキットを使用して、マルチプレイヤーゲームをテスト、視覚化、最適化するのに役立ちます。このツールキットを使用することで、デベロッパーは Amazon 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 のサンプルコードで詳細なデプロイ手順を確認し、そのままデプロイするか、またはニーズに合わせてカスタマイズしましょう。 

サンプルコードに移動

免責事項

サンプルコード、ソフトウェアライブラリ、コマンドラインツール、概念の実証、テンプレート、またはその他の関連技術 (私たちの担当者から提供される前述のものを含む) は、AWS カスタマーアグリーメント、またはお客様と AWS との間の関連文書契約 (いずれか該当する方) に基づき、AWS コンテンツとしてお客様に提供されるものです。お客様は、この AWS コンテンツを、お客様の本番アカウント、または本番データもしくはその他の重要なデータで使用すべきではありません。お客様は、サンプルコードなどの AWS コンテンツを、お客様固有の品質管理手法および基準に基づいて、本番グレードでの使用に適したテスト、セキュリティ確保、および最適化を行う責任を負います。AWS コンテンツのデプロイには、Amazon EC2 インスタンスの実行や Amazon S3 ストレージの使用など、AWS の課金対象リソースを作成または使用するための AWS 料金が発生する場合があります。