メインコンテンツまでスキップ

メンテナンス中のオンラインゲーム統合におけるグレースフルな中断処理

Last updated on February 4, 2026

注釈:本資料はAI技術を用いて翻訳されています。

AccelByte Gaming Services (AGS) を利用したオンラインゲームは、認証、マッチメイキング、フレンドリスト、クラウドセーブなどの重要な機能において、堅牢なバックエンドインフラストラクチャに依存しています。安定性、セキュリティ、パフォーマンスを維持するために定期的なメンテナンスは不可欠です。しかし、適切に管理されない場合、メンテナンス期間中にプレイヤー体験の低下、予期しない切断、API リクエストの失敗が発生する可能性があります。

これらの中断を最小限に抑えるため、開発者はプレイヤーに情報を提供し、リトライを効果的に管理し、ゲームプレイへの影響を軽減するために、グレースフルな中断処理を実装する必要があります。AccelByte の組み込みリトライメカニズムを活用することで、サービス中断中でもゲームはよりスムーズな体験を提供できます。

前提条件

これらの処理例は Byte Wars の実装に基づいて説明されています。より深く理解するために、Unreal Engine Byte Wars Setup または Unity Byte Wars Setup のステップバイステップガイドに従って、ワークスペースに Byte Wars をセットアップしてください。

AGS ネットワーク通信

AGS は主に2つのタイプのネットワーク通信に依存しています:

  1. WebSocket 接続:ロビーとチャットサービスに使用されます。
  2. HTTP 接続:アクセス、ソーシャル機能、ストレージ、エンゲージメントサービスに使用されます。

AGS Unreal Engine と Unity SDK の両方には、設定されたタイムアウトでの自動再接続とリトライのための組み込み機能が付属しています。ただし、デフォルトのタイムアウトに達した場合、手動で再接続を試行するための追加の処理が必要です。

グレースフルな中断処理の実装方法

定期メンテナンス中のゲーム統合におけるグレースフルな中断処理の例:

Game SDK ログ

開発者が接続問題をデバッグするのを支援するため、Game SDK の AccelByte 関連コンポーネントに対して詳細ログを有効にすることを推奨します。これにより、ネットワーク中断と再接続試行に関する詳細な情報が得られます。

Unreal Engine SDK では、AccelByte 関連コンポーネントを取得するために以下のログカテゴリを有効にできます:

  • LogAccelByte – AccelByte SDK の一般的なログで、API リクエストとレスポンスをカバーします。
  • LogAccelByteOSS – AccelByte Online Subsystem に関連するログで、マッチメイキング、認証、セッション処理に有用です。
  • LogAccelByteLobby – パーティ管理やフレンド通知などのロビーインタラクションの WebSocket 接続をログに記録します。
  • LogAccelByteWebsocket – WebSocket 接続と再接続試行に関する詳細なログを提供します。
  • LogAccelByteHttpCache – HTTP キャッシュに関する詳細なログを提供します。
  • LogAccelByteHttpRetry – HTTP リトライメカニズムに関する詳細なログを提供します。

これらのログを有効にすることで、開発者は問題を追跡し、リトライ動作を分析し、中断をより効果的にデバッグできるようになり、ネットワーク中断中でもよりスムーズなプレイヤー体験を提供できます。

Unreal Engine プロジェクトでこれらのログを有効にするには、以下の手順に従ってください:

  1. ゲームプロジェクトディレクトリの Config/DefaultEngine.ini ファイルを開きます。
  2. [Core.Log] セクションの下に、次のようにログカテゴリ名を追加します:
...
[Core.Log]
LogAccelByte=VeryVerbose
LogAccelByteOSS=VeryVerbose
LogAccelByteLobby=VeryVerbose
LogAccelByteWebsocket=VeryVerbose
LogAccelByteHttpCache=VeryVerbose
LogAccelByteHttpRetry=VeryVerbose
...
  1. また、ゲーム開始時にコマンドラインパラメータを使用して、異なるログカテゴリの詳細レベルを制御することもできます。これを行うには、起動コマンドの最後に以下のフラグを追加します:
-LogCmds="LogAccelByte VeryVerbose, LogAccelByteOSS VeryVerbose, LogAccelByteLobby VeryVerbose, LogAccelByteWebsocket VeryVerbose, LogAccelByteHttpCache VeryVerbose, LogAccelByteHttpRetry VeryVerbose"

これにより AccelByte コンポーネントの詳細ログが有効になり、ネットワーク問題、API リクエスト、再接続試行をより効果的に追跡できるようになります。

ゲーム統合のベストプラクティス