ゲームラグ白書 › L13 サーバー構成と運用
外部サービスへの依存 External dependencies (auth, billing, platform)
原因ID in-external · 主担当 外部・外部 · 副担当 ゲーム開発チーム・サーバー開発
図と実験のあるメインページでこのカードを開く →
プラットフォームのログイン、決済、本人確認などの外部サービスが遅くなったり止まったりすると、その段階で先に進めなくなります。
なぜ 外部の認証・決済サービスの障害や遅延 → すると その段階で応答待ち → 画面では ログイン不可、決済失敗。すでにプレイ中の人は問題なし
- 症状
- 接続不可・無限ロード, 不発・ロールバック
- 要因
- ストール
- 誰に起きるか
- サーバー全体, 特定の機能だけ
- いつ
- 接続直後・メンテ明け, 特定の操作をしたとき
- 担当
- 主担当 外部・外部 · 副担当 ゲーム開発チーム・サーバー開発
- ゲーム開発チームの対応
- 外部呼び出しにタイムアウトとわかりやすい案内、認証結果のキャッシュ、決済の再試行・補償手続き。
- 外部の対応
- 認証・決済・プラットフォームの事業者に障害の確認と復旧を依頼、ユーザーに外部サービスの障害であることを案内。
- グラフでは
- ある時点から階段状に上昇 · 外部呼び出しの応答時間・エラー率、ログイン成功数
- 確認箇所
- プラットフォームのログイン・決済・本人確認など外部呼び出しごとの応答時間・エラー率・タイムアウト数と、事業者のステータスページ
- 該当する場合
- ログイン・決済の失敗が集中した時刻から、特定の外部呼び出しのエラー・タイムアウトだけが一段上がったまま推移し、事業者のステータスページに同じ時刻の障害が載っている
- 該当しない場合
- 外部呼び出しは正常なのにログインできないなら、ログインサーバー自体(スレッドプールの枯渇、DB)かOSの接続待ちキュー(backlog)側
- 確認手段
- ゲームサーバー・クライアントのログ・メトリクスが必要
- 実際の事例
- Fastly 2021: Fastly CDNで世界規模のエラー
AWS 2021: AWS us-east-1の内部ネットワーク輻輳
AWS 2025: AWS us-east-1のDynamoDB DNS障害と長引いた復旧
出典
- Timeouts, retries, and backoff with jitter AWS
Amazon Builders' Library。応答を待つ間はスレッド・接続などのリソースを占有するのでタイムアウトを設け、副作用のあるAPIは冪等性が保証される場合だけ再試行 - Circuit Breaker Pattern Microsoft Azure
失敗する可能性が高い呼び出しは、タイムアウトまで待たずにすぐ拒否して応答時間を守る - REL05-BP01 Implement graceful degradation to transform applicable hard dependencies into soft dependencies AWS
AWS Well-Architected。依存サービスが障害中でも、少し古いデータを使ってでも中核機能を維持(認証結果キャッシュの根拠)
あわせて読みたい原因
同じ層:L13 サーバー構成と運用
同じ症状(接続不可・無限ロード)を起こすほかの層の原因
図と実験のあるメインページでこのカードを見る