45. ■MOエンジンのサーバについて■MOエンジンのサーバについて
Redis ServerRedis Server
Battle
Server
Battle
Server
Battle
Information
Server
Battle
Information
Server
クライアントクライアント
WEB ServerWEB Server
Matching
Server
Matching
Server
Battle
Server
Battle
Server
Battle
Server
Battle
Server
Battle
Server
Battle
Server
× n
<MOエンジン概念念図><MOエンジン概念念図>
45
47. Group BGroup BGroup AGroup A
■バトルインフォメーションサーバ■バトルインフォメーションサーバ
バトルサーバの管理理を⾏行行うサーバです。
バトルサーバのリストを保持し、死活監視を⾏行行います。
その他、バトルサーバにユーザーデータの受け渡しも⾏行行います。
また、別パッケージとなっているリアルタイム通信エンジンとの
ネットワーク共有をも実現させます。
バトルサーバの管理理を⾏行行うサーバです。
バトルサーバのリストを保持し、死活監視を⾏行行います。
その他、バトルサーバにユーザーデータの受け渡しも⾏行行います。
また、別パッケージとなっているリアルタイム通信エンジンとの
ネットワーク共有をも実現させます。
Battle
Server
Battle
Server
Battle
Information
Server
Battle
Information
Server
Battle
Server
Battle
Server
× n
Battle
Server
Battle
Server
Battle
Server
Battle
Server
Group A
List
Group B
List
47
52. クライアントプログラム
LoadBalancer LoadBalancer
Web App x N Web Res x N
Web Admin
/ 監視ソフト用
ポート 443
ポート 80 ポート 80
監視ソフト用
DB
KPI用
DB
InternetInternet
Memcached
Matching
(C++)
x N
ポート 任意
Battle
(C++)
x N
ポート 任意
■マッチングサーバとバトルサーバ
リアルタイム通信エンジンを⽤用いて、C++、C#で実装しRPC通信を⾏行行う。
■WEBサーバとリアルタイムサーバの通信
リアルタイム通信エンジンとNetwork Game Frameworkの通信⽤用のプラグインを使
⽤用する事で、WEBサーバとリアルタイムサーバ間で双⽅方向通信が可能。
■マッチングサーバとバトルサーバ
リアルタイム通信エンジンを⽤用いて、C++、C#で実装しRPC通信を⾏行行う。
■WEBサーバとリアルタイムサーバの通信
リアルタイム通信エンジンとNetwork Game Frameworkの通信⽤用のプラグインを使
⽤用する事で、WEBサーバとリアルタイムサーバ間で双⽅方向通信が可能。
C++C++
マスターデータDB
(Master / Slave)
ログ保存DB
(Master / Slave)
バックアップ
ユーザーデータDB
(Master / Slave)
バックアップ バックアップ
■非同期+リアルタイムサーバ構成例■非同期+リアルタイムサーバ構成例
52