このページの本文へ

前へ 1 2 3 4 5 次へ

「AWS Summit Japan 2025」レポート

カプコン担当者「リージョンにあるインスタンスを使い切ってしまったことも」

「モンハンワイルズ」の舞台裏 数百万同時接続の“超高負荷”に耐えるクラウド構築テクニック

2025年07月18日 08時00分更新

文● 福澤陽介/TECH.ASCII.jp

  • この記事をはてなブックマークに追加
  • 本文印刷

 発売からわずか1か月で世界累計1000万本を売り上げた、カプコンのゲームタイトル「モンスターハンターワイルズ」。リリース時には数百万件の同時接続を達成し、シリーズ初の試みとして「クロスプレイ」にも対応している。その“超高負荷”を支えるクラウドインフラは、どんな壁を乗り越えて構築されたのか。

 「AWS Summit Japan 2025」のDay2(6月26日)に開催されたセッション「モンスターハンターワイルズ 100万以上のユーザー同時接続を支えたネットワークアーキテクチャ」では、大量トラフィックが見込まれるゲームサーバーをゼロから構築する中での、技術選定や独自の工夫、苦労話が語られた。登壇したのは、カプコンのCS 第二開発統括 システム基盤部 ネットワーク開発室 エンジニアである筑紫啓雄氏だ。

カプコン CS 第二開発統括 システム基盤部 ネットワーク開発室 エンジニア 筑紫啓雄氏

大規模ゲームサーバーをゼロから構築、マイクロサービスアーキテクチャ採用の良し悪し

 モンスターハンターワイルズ(以下、モンハンワイルズ)は、2025年2月28日に発売された、「モンスターハンター」シリーズの最新作である。

 今作では、ネットワーク面で2つの大きな挑戦をしている。ひとつは、同シリーズで初となる、プラットフォーム(Steam、Xbox SeriesX/S、PS5)が異なるユーザー同士でも遊べる「クロスプレイ」への対応。そしてもうひとつは、最大100人が集まれる「ロビー」を実装したことだ。

 これらの新たな要素は、これまで同シリーズで利用していたプラットフォーマーのネットワークでは実現できなかった。そのためカプコン自身で、膨大なトラフィックが見込まれるゲームサーバーをゼロから構築する必要があった。

 モンハンワイルズのサーバー群は、大きく2種類に分けられる。ひとつは、APIを提供する「APIサーバー」。もうひとつは、ユーザーの位置やキャラクターの情報を他のユーザーと同期するための「リアルタイムサーバー」だ。APIサーバーは、データベースなどを国内に集約しているため日本リージョンに設置。一方で、ユーザーの情報の受け渡しがメインとなるリアルタイムサーバーは、各国のリージョンに分散配置してレイテンシ(通信の遅延)を抑えている。

モンハンワイルズのサーバー構成

 筑紫氏はまず、APIサーバーの舞台裏から紹介した。

 APIサーバーは、マイクロサービスアーキテクチャで構成されている。その理由は、アプリケーションやサーバー数が巨大になるため、責任範囲を独立させて柔軟性を得ること、そして開発を高速化することだという。フロントのAPIサービスにhttpリクエストを集約して、バックサービスへの受け渡しはOSSのRPCフレームワークであるgRPCで通信している。

 サーバーアプリケーションは、12サービスに分割した。「開発時はさらに多かったが、管理が煩雑になるので統合した。本来はドメインを定義して分割すべきだったが、意外と困らなかった。ただ、障害発生時の影響範囲が大きくなることには注意が必要だった」と筑紫氏。

 マイクロサービスアーキテクチャの利点は、分散トレーシングによって、サービス単位でエラーやレイテンシ(遅延)が特定できることだ。加えて、各担当者がコンフリクトを気にすることなく実装でき、特定のサービスでバグが発生した場合も、更新が容易だったという。

 その反面、難しかったポイントは「CI/CDの複雑化」だという。ビルドするアプリケーションが多いため、バージョン管理を行うCI/CDの構築・管理に手間がかかった。また、マイクロサービスでよく言われる「データ操作時のトランザクション」にも苦労したと振り返る。「アプリを極力『2層コミット』しないデザインで設計して、どうしても必要な場面は、データに状態を持たせることで解決した」(筑紫氏)

マイクロサービスアーキテクチャで良かったこと、難しかったこと

前へ 1 2 3 4 5 次へ

カテゴリートップへ

この連載の記事
  • 角川アスキー総合研究所