翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon GameLift の仕組み
このトピックでは、ゲームホスティングのコアコンポーネントについて説明し、Amazon GameLift がマルチプレイヤーゲームサーバーをプレイヤーに提供する方法について説明します。
Amazon でホストするゲームを準備する準備はできました GameLiftか?
主要コンポーネント
ゲームをホスト GameLift するように Amazon をセットアップするには、以下のコンポーネントを使用します。マネージド Amazon を使用したゲームアーキテクチャ GameLift の図は、これらのコンポーネント間の関係を視覚化したものです。
-
ゲームサーバーは、フリートで実行されるゲームのサーバーソフトウェアです。ゲームサーバーのビルドまたはスクリプトを Amazon にアップロード GameLift し、Amazon に指示します GameLift。Amazon GameLift Anywhere または Amazon GameLift FleetIQ を使用する場合は、ゲームサーバービルドをコンピューティングリソースに直接アップロードします。
-
[ゲームセッション] とは、プレイヤーと一緒に進行中のゲームです。有効期間やプレイヤー数など、ゲームセッションの基本特性を定義します。次に、プレイヤーはゲームサーバーに接続してゲームセッションに参加します。
-
ゲームクライアントは、プレイヤーのデバイスで実行されるゲームのソフトウェアです。ゲームクライアントは、Amazon から受信した接続情報に基づいて、バックエンドサービスを介してゲームサーバーに接続し、ゲームセッションに参加します GameLift。
-
バックエンドサービスは、Amazon に関連するタスクを処理する追加のカスタムサービスです GameLift。ベストプラクティスとして、バックエンドサービスは Amazon とのゲームクライアント通信をすべて処理する必要があります GameLift。
ゲームサーバーのホスティング
Amazon では GameLift、マネージド Amazon 、Amazon GameLift FleetIQ GameLift、Amazon の 3 つの異なる方法でゲームサーバーをホストできます GameLift Anywhere。Amazon GameLift FleetIQ の詳細については、「Amazon GameLift FleetIQ とは」を参照してください。
フリートは、ゲームのニーズに合わせて設計できます。フリートの設計に関する詳細については、「Amazon GameLift フリート設計ガイド」を参照してください。
マネージド Amazon GameLift
マネージド Amazon では GameLift、Amazon GameLift 仮想コンピューティングリソースでゲームサーバーをホストできます。これはインスタンス と呼ばれます。インスタンスのフリートを作成し、それらをデプロイしてゲームサーバー (カスタムゲームサーバーまたはリアルタイムサーバー) を実行して、ホスティングリソースを設定します。
Amazon GameLift Anywhere
Amazon を使用すると GameLift Anywhere、管理するコンピューティングでゲームサーバーをホストできます。コンピューティングを参照する Anywhere フリートを作成して、ホスティングリソースを設定します。
フリートのエイリアス
エイリアスは、フリート間で転送できる指定先であり、一般的なフリートのロケーションを指定する便利な方法です。エイリアスを使用すると、ゲームクライアントを変更せずに、ゲームクライアントをあるフリートから別のフリートに切り替えることができます。コンテンツを指定するターミナルエイリアスを作成することもできます。
ゲームセッションの実行
ゲームサーバービルドをフリートにデプロイし、Amazon が各インスタンスでゲームサーバープロセス GameLift を起動すると、フリートはゲームセッションをホストできます。Amazon GameLift は、ゲームクライアントサービスがバックエンドサービスまたは Amazon にプレイスメントリクエストを送信すると、新しいゲームセッションを開始します GameLift。
ゲームセッションプレイスメントと FleetIQ アルゴリズム
キューは FleetIQ アルゴリズムを使用して、新しいゲームセッションをホストする利用可能なゲームサーバーを選択します。ゲームセッション配置の主なコンポーネントは、Amazon GameLift ゲームセッションキュー です。ゲームセッションキューに、そのキューがゲームセッションを配置できる場所を決定するフリートのリストを割り当てます。ゲームセッションのキューの詳細と、ゲーム用にそれらを設計する方法については、「ゲームセッションキューの設計」を参照してください。
ゲームへのプレーヤーのConnection
ゲームセッションプレイスメントプロセスのパートとして、キューまたはゲームセッションは新しいゲームセッションをスタートするように選択したゲームサーバーに求めます。ゲームサーバーはプロンプトに応答し、プレイヤー接続を受け入れる準備ができ GameLift たら Amazon にレポートします。 GameLift その後、Amazon は接続情報をバックエンドサービスまたはゲームクライアントサービスに配信します。ゲームクライアントはこの情報を使用してゲームセッションに直接Connectし、ゲームに参加します。
フリートの容量のスケーリング
フリートがアクティブになりゲームセッションをホスティングできるようになると、プレイヤーの需要に合わせてフリートキャパシティを調整できます。すべての新規プレイヤーが素早くゲームを見つけるられるようにすることと、アイドル状態のリソースを浪費することの間でバランスを図ることをお勧めします。
Amazon GameLift は、非常に効果的な自動スケーリングツールを提供しています。または、フリート容量を手動で設定することもできます。詳細については、「Amazon GameLift ホスティングキャパシティのスケーリング」を参照してください。
Auto scaling
Amazon GameLift には、自動スケーリングの 2 つの方法があります。
追加のスケーリング機能
-
ゲームセッション保護 — スケールダウンイベント中にアクティブなプレイヤーをホストしているゲームセッションを Amazon が終了 GameLift しないようにします。
-
[Scaling limits](スケーリング制限) – フリートのインスタンス数に下限と上限を設定することで全体的なインスタンスの使用量をコントロールします。
-
[自動スケーリングの停止] – 自動スケーリングポリシーを変更または削除せずに、フリートロケーションレベルで自動スケーリングを停止します。
-
[スケーリングメトリクス] – フリートのキャパシティおよびスケーリングイベントを追跡します。
Amazon のモニタリング GameLift
フリートが稼働している場合、Amazon GameLift はデプロイされたゲームサーバーのパフォーマンスをモニタリングするのに役立つさまざまな情報を収集します。この情報を使って、リソースの使用の最適化、問題のトラブルシューティング、プレイヤーのゲーム内での行動の仕方の確認できます。Amazon は以下を GameLift 収集します。
-
フリート、場所、ゲームセッション、プレイヤーセッションに関する詳細
-
使用状況メトリクス
-
サーバープロセスの健全性
-
ゲームセッションログ
Amazon でのモニタリングの詳細については、 GameLift「」を参照してくださいAmazon のモニタリング GameLift。
他の AWS リソースの使用
ゲームサーバーとアプリケーションは、他の AWS リソースと通信できます。たとえば、プレイヤーの認証やソーシャル ネットワークのために一連のウェブサービスを使用する場合があります。ゲームサーバーが が AWS アカウント 管理する AWS リソースにアクセスできるようにするには、Amazon が AWS リソースにアクセス GameLift することを許可します。
Amazon GameLift には、このタイプのアクセスを管理するためのオプションがいくつか用意されています。詳細については、「フリートの他の AWS リソースと通信する」を参照してください。