割り当て生存時間 (TTL、time to live)
ノート: このページのコンテンツは、Unity Cloud Dashboard で使用可能な Multiplay Hosting に関連しています。Clanforge を使用している場合は、Clanforge のドキュメント を参照してください。
割り当て生存時間 (TTL、time to live) は、割り当ての最大生存期間を定義するフリートレベルの設定です。これは主に、アイドル状態になった割り当て済みゲームサーバーを保護するために機能します。プレイヤーがゲームセッションに参加して退出したとき、ゲームサーバーは、新しい接続を許可するためにアクティブな状態である必要があります。ゲームサーバーが割り当てられてから、プレイヤーの接続なしで一定時間 (割り当て TTL) が経過すると、安全に停止できると見なされます。
さまざまな割り当て TTL 値によって、フリートが使用するリソースと、それに伴ってフリートに関連するコストを、大幅に増やしたり減らしたりできます。永続化された体験がないゲームは、割り当ての最大生存期間をデフォルトから大幅に延長する必要はほとんどありません。したがって、大きなデメリットなく、フリートが使用するリソースを削減できます。一方、永続化された体験を提供するゲームは、割り当ての最大生存期間の延長でメリットを得られます。そうすることで、プレイヤーがデータの損失を気にせずにゲームサーバーに参加して退出できる時間が長くなるためです。
セッションの長さに関する考慮事項
注意: ゲームサーバーの割り当て TTL を長く設定すると、ゲームのホスティングコストが上昇する可能性があります。コストの超過を防ぐために、アクティブセッションを実行していないゲームサーバーの割り当て解除を検討してください。
理想的な割り当て TTL によって、柔軟性とコストのバランスがとれます。つまり、アクティブでない割り当てが長く存続するほど、ホスティングコストが上がります。永続データがなく、短期間のセッションを使用するゲームには、数分から数時間までの割り当て TTL が適しています。ただし、永続化された仮想体験を備えたゲーム (および他のアプリケーション) には、数日から数か月 (できればさらに長期) の長い割り当て TTL のメリットがあります。長期セッションの特徴は通常の短期ゲームセッションとは異なるため、短期セッションと長期セッションを混在させると、スケーリングとゲームサーバー配置がすぐに最適ではなくなります。結果として、推奨される有効な事例は、長期ゲームサーバー専用に別のフリートを用意することです。
短期ゲームセッション | 長期ゲームセッション |
---|---|
割り当て TTL 値は、数分から数時間の範囲です (例えば 30 分間)。 | 割り当て TTL 値は、数日から数か月の範囲です (例えば 2 週間)。 |
通常、永続化された体験はありません。 | 永続化されたプレイヤー体験が提供されます。 |
プレイヤーがゲームセッションを退出した後で再び参加することはあまりありません。 | 多くの場合、プレイヤーはデータがゲームサーバーに保持されていると想定し、自由にゲームセッションに参加して退出します。 |
割り当て TTL は、フリートのゲームサーバーのパフォーマンスにも影響を与えることがあります。例えば、長期セッションで、テストを長期間実行しないと見つかりにくいメモリリークが発生する場合があります。割り当て TTL を調整する際には以下の点を考慮してください。
- 割り当て TTL が、ゲームセッションの実行に必要な最大時間を反映するようにします。
- 長期実行セッションでゲームサーバー実行ファイルをテストしてから、割り当て TTL を延長して、予期しないメモリリークが長期ゲームセッションで発生する可能性を減らします。
- 割り当て TTL を増やす前にユーザーの期待について考慮します。割り当て TTL を大幅に増やすと、一部のユーザーが混乱する場合があります。
- サーバークエリプロトコル (SQP) (または別のクエリプロトコル) を使用して、最後のアクティビティが各ゲームサーバーでいつ発生したかを Multiplay Hosting が把握できるようにします。ゲームサーバーに参加するプレイヤーがいない場合は、コストを抑えるために Multiplay Hosting がゲームサーバーの割り当てを解除できます。プレイヤーが参加するとカウントダウンがリセットされ、アクティブな接続数がゼロになるとカウントダウンが再び開始されます。
フリートのオーバーライド
フリートそれぞれの割り当て TTL の設定と管理は、API を介して行うことができます。