JP2017037446A - Game server device and distribution processing method - Google Patents
Game server device and distribution processing method Download PDFInfo
- Publication number
- JP2017037446A JP2017037446A JP2015157892A JP2015157892A JP2017037446A JP 2017037446 A JP2017037446 A JP 2017037446A JP 2015157892 A JP2015157892 A JP 2015157892A JP 2015157892 A JP2015157892 A JP 2015157892A JP 2017037446 A JP2017037446 A JP 2017037446A
- Authority
- JP
- Japan
- Prior art keywords
- space
- player
- server device
- game server
- charge
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
Description
本発明は、オンラインゲームを実行するゲームサーバ装置の分散処理の技術に関する。 The present invention relates to a technique for distributed processing of a game server device that executes an online game.
非特許文献1には、MMO(Massively Multiplayer Online)形式のオンラインゲームにて、ゲームの世界を地理的な構造に基づいて分割し、別のサーバプロセス、あるいはサーバマシンに処理を割り当てる空間分割法(空間の地理的分割)に関する技術が開示されている。非特許文献1には、1つのゲーム空間を上下左右に4等分して個々の分割された空間をサーバ1〜4が担当することの説明図がある。
Non-Patent
ユーザが操作するプレイヤー(ゲームキャラクタ)は、分割されたゲーム空間のいずれかに存在してプレイする。同じ分割空間に存在するすべてのプレイヤーのプレイに関する処理は、その分割空間を担当するサーバが担当する。空間分割法を用いることで、分割空間ごとの分散処理を実現し、リアルタイム処理の負荷全体を軽減することができる。 A player (game character) operated by the user exists in one of the divided game spaces and plays. The processing related to the play of all the players existing in the same divided space is handled by the server in charge of the divided space. By using the space division method, distributed processing for each divided space can be realized, and the entire load of real-time processing can be reduced.
プレイヤーが現在いる空間から隣の空間に移動する場合、そのプレイヤーのプレイに関する処理を担当するサーバが切り替わる。このような担当サーバの切り替えでは、プレイヤーの状態データを移行させるための処理遅延が発生し、プレイが一時的に中断する。リアルタイム性を強く要求するオンラインゲームでは、このような処理遅延やプレイの一時的中断はサービス品質の低下をもたらすという問題がある。しかし、非特許文献1にはこのような問題を解決する手段について、具体的には言及していない。
When a player moves from the current space to the adjacent space, the server in charge of processing related to the player's play is switched. In such switching of the responsible server, a processing delay for transferring the player state data occurs, and the play is temporarily interrupted. In an online game that strongly requires real-time performance, there is a problem that such processing delay and temporary interruption of play result in a decrease in service quality. However, Non-Patent
そこで、本発明は、上記事情に鑑みて、分散処理でオンラインゲームを実行するゲームサーバ装置に関して、オンラインゲームのプレイヤーが現在いる空間から隣の空間に移動する際の処理遅延を緩和することを課題とする。 Therefore, in view of the above circumstances, the present invention relates to a game server device that executes an online game by distributed processing, and it is an object to reduce processing delay when an online game player moves from a current space to an adjacent space. And
前記課題を解決するために、請求項1に記載の発明は、ゲーム空間を所定の単位に分割した空間を担当するステートフル型のゲームサーバ装置であって、自身の担当する空間に存在するプレイヤーの状態データの原本を保存する原本データ管理部と、隣接する空間を担当する他のゲームサーバ装置へ、前記状態データのレプリカをコピーするレプリカ配置部と、を備え、前記原本データ管理部は、前記隣接する空間に居たプレイヤーが前記自身の担当する空間に移動したことを検出すると、当該プレイヤーの状態データのレプリカを原本として保存する、ことを特徴とする。
In order to solve the above-mentioned problem, the invention described in
また、請求項5に記載の発明は、ゲーム空間を所定の単位に分割した空間を担当するステートフル型のゲームサーバ装置における分散処理方法であって、前記ゲームサーバ装置が、自身の担当する空間に存在するプレイヤーの状態データの原本を保存するステップと、隣接する空間を担当する他のゲームサーバ装置へ、前記状態データのレプリカをコピーするステップと、前記隣接する空間に居たプレイヤーが前記自身の担当する空間に移動したことを検出すると、当該プレイヤーの状態データのレプリカを原本として保存するステップと、を実行する、ことを特徴とする。 The invention according to claim 5 is a distributed processing method in a stateful type game server device that takes charge of a space obtained by dividing the game space into predetermined units, and the game server device is assigned to the space that it is in charge of. Storing the original state data of the existing player, copying a replica of the state data to another game server device in charge of the adjacent space, and a player in the adjacent space When it is detected that the player has moved to the space in charge, a step of storing a replica of the state data of the player as an original is executed.
請求項1,5に記載の発明によれば、プレイヤーが隣接空間に移動した場合、ゲームサーバ装置間で当該プレイヤーの状態データを移行させる代わりに、隣接空間を担当するゲームサーバ装置が、すでにコピー済みのレプリカを原本に切り替えてプレイヤーの処理を継続することができる。よって、状態データの移行に伴う処理遅延やプレイの一時中断を回避しサービス品質の低下をもたらすことはない。
したがって、分散処理でオンラインゲームを実行するゲームサーバ装置に関して、オンラインゲームのプレイヤーが現在いる空間から隣の空間に移動する際の処理遅延を緩和することができる。
According to the first and fifth aspects of the present invention, when the player moves to the adjacent space, the game server device in charge of the adjacent space is already copied instead of transferring the state data of the player between the game server devices. The player can continue processing by switching the completed replica to the original. Therefore, the processing delay and the play interruption associated with the state data transfer are avoided, and the service quality is not deteriorated.
Therefore, regarding a game server device that executes an online game by distributed processing, it is possible to reduce processing delay when the player of the online game moves from the current space to the adjacent space.
また、請求項2に記載の発明は、請求項1に記載のゲームサーバ装置であって、前記レプリカ配置部は、前記プレイヤーの現在位置から所定の距離に及ぶ範囲を含む空間を担当するゲームサーバ装置へ、当該プレイヤーの状態データのレプリカをコピーする、ことを特徴とする。
The invention according to
請求項2に記載の発明によれば、状態データのレプリカの配置先を絞り込むことができるため、レプリケーション負荷を小さくすることができる。 According to the second aspect of the present invention, it is possible to narrow down the arrangement destination of the replica of the state data, so that the replication load can be reduced.
また、請求項3に記載の発明は、請求項1に記載のゲームサーバ装置であって、前記レプリカ配置部は、前記プレイヤーの速度ベクトルから、次に移動する空間を予測し、当該予測した空間を担当するゲームサーバ装置へ、当該プレイヤーの状態データのレプリカをコピーする、ことを特徴とする。
The invention according to
請求項3に記載の発明によれば、状態データのレプリカの配置先を絞り込むことができるため、レプリケーション負荷を小さくすることができる。 According to the third aspect of the present invention, it is possible to narrow down the arrangement destinations of the replicas of the state data, so that the replication load can be reduced.
また、請求項4に記載の発明は、請求項1から請求項3のいずれか一項に記載のゲームサーバ装置であって、自身のゲームサーバ装置の負荷を監視する負荷監視部と、前記負荷が所定の値を超えた場合には、自身の担当する空間を細分割して、当該細分割した空間の一つを新たなゲームサーバ装置に割り当てる空間分割部と、前記細分割前の空間に隣接する空間を担当する他のゲームサーバ装置に、前記細分割を反映した空間情報を通知する空間分割通知部と、前記細分割前の空間を担当する他のゲームサーバ装置から前記空間情報を受信した場合、自身の担当する空間の境界情報を更新する境界情報算出部と、をさらに備える、ことを特徴とする。
The invention according to
請求項4に記載の発明によれば、空間の細分割によって、過負荷となったゲームサーバ装置に対して、新たなゲームサーバ装置が負荷を分担することができるため、システムのダウンを回避することができる。
According to the invention described in
本発明によれば、分散処理でオンラインゲームを実行するゲームサーバ装置に関して、オンラインゲームのプレイヤーが現在いる空間から隣の空間に移動する際の処理遅延を緩和することができる。 ADVANTAGE OF THE INVENTION According to this invention, regarding the game server apparatus which performs an online game by distributed processing, the processing delay at the time of the player of an online game moving to the adjacent space from the present space can be relieved.
本発明を実施するための形態(実施形態)について、図面を参照しながら詳細に説明する。 EMBODIMENT OF THE INVENTION The form (embodiment) for implementing this invention is demonstrated in detail, referring drawings.
(全体構成)
図1に示すように、本実施形態の分散処理システムは、本実施形態のゲームサーバ装置1(図2参照)となる複数のサーバ1−1,1−2,・・・,1−nと、振り分け装置2−1,2−2,・・・,2−nと、ロードバランサ3と、を備えている。サーバ1−1,1−2,・・・,1−nと、振り分け装置2−1,2−2,・・・,2−nと、ロードバランサ3と、図1中のクライアント4−1,・・・,4−nとは、ネットワーク(図示せず)を介して通信可能に接続されている。
(overall structure)
As shown in FIG. 1, the distributed processing system of the present embodiment includes a plurality of servers 1-1, 1-2,..., 1-n serving as the game server device 1 (see FIG. 2) of the present embodiment. , 2-n and a
サーバ1−1,1−2,・・・,1−nは、MMO形式のオンラインゲームを実現するアプリケーションを有し、オンラインゲームのゲームイベントに関する処理を実行するステートフル型のサーバである。オンラインゲームのゲーム空間(説明の便宜上、2次元とするが、1次元、3次元のゲーム空間にも本発明を適用可。)は、空間分割法によって所定の単位に分割されている。サーバ1−1,1−2,・・・,1−nの各々は、分割されたゲーム空間の各々を担当する。図1には、1つのゲーム空間が空間A,B,C,D,・・・に分割されており、サーバ1−1,1−2,・・・,1−nが、分割された空間A,B,C,D,・・・のうち1つを担当する様子が示されている。 The servers 1-1, 1-2,..., 1 -n are stateful servers that have an application that realizes an online game in the MMO format and execute processing related to game events of the online game. A game space of an online game (for convenience of explanation, it is assumed to be two-dimensional, but the present invention can also be applied to a one-dimensional and three-dimensional game space) is divided into predetermined units by a space division method. Each of the servers 1-1, 1-2,..., 1-n is in charge of each of the divided game spaces. In FIG. 1, one game space is divided into spaces A, B, C, D,..., And the servers 1-1, 1-2,. A state of taking charge of one of A, B, C, D,... Is shown.
サーバ1−1,1−2,・・・,1−nの各々は、自身の担当する空間に存在するプレイヤーに関するさまざまな処理を実行する。例えば、当該処理には、クライアント4−1,・・・,4−nからのプレイヤー操作要求に応じた処理、プレイヤー同士の相互干渉(例:チャット、アイテム交換)に関する処理がある。担当空間内のプレイヤーの位置はプレイヤー操作要求に従って随時変化する(周知)。また、本実施形態では、従来と同様に処理遅延緩和のために、異なる担当空間に存在するプレイヤー同士の相互干渉は処理の対象外とするが、処理遅延の問題を解消できればこの限りではない。 Each of the servers 1-1, 1-2,..., 1 -n executes various processes related to the players that exist in the space that it is responsible for. For example, the process includes a process in response to a player operation request from the clients 4-1,..., 4-n and a process related to mutual interference between players (eg, chat, item exchange). The position of the player in the assigned space changes from time to time according to the player operation request (well known). Further, in the present embodiment, mutual interference between players existing in different assigned spaces is excluded from processing in order to reduce processing delay as in the conventional case, but this is not limited as long as the problem of processing delay can be solved.
サーバ1−1,1−2,・・・,1−nの各々は、互いに最新情報をやり取りして同期することができる。最新情報には、サーバ1−1,1−2,・・・,1−nのIP(Internet Protocol)アドレスや、後記のサーバ−空間対応テーブルT1がある。上記のように、空間という連続した情報と、サーバ1−1,1−2,・・・,1−nの各々とを対応させる構成をとるため、従来のように、サーバ増減を行ってもその増減に伴う影響範囲を、関連する少数のサーバのみにとどめることができる。 Each of the servers 1-1, 1-2,..., 1 -n can exchange and synchronize with the latest information. The latest information includes IP (Internet Protocol) addresses of the servers 1-1, 1-2,..., 1-n, and a server-space correspondence table T1 described later. As described above, in order to adopt a configuration in which continuous information of space is associated with each of the servers 1-1, 1-2,. The range of influence accompanying the increase / decrease can be limited to only a small number of related servers.
図1中のクライアント4−1,・・・,4−nは、オンラインゲームのユーザからの入力を受け付け、ゲーム空間上のプレイヤーを操作する計算機である。クライアント4−1,・・・,4−nは、ユーザからの入力を受け付けると、ゲーム空間上のプレイヤーの現在位置をキーとして含むプレイヤー操作要求をロードバランサ3に送信する。なお、プレイヤーの現在位置は、KVS(Key Value Store)システムにおけるプレイヤー(Value)のキー(Key)となる。
Clients 4-1,..., 4-n in FIG. 1 are computers that accept input from users of online games and operate players in the game space. Upon receiving an input from the user, the clients 4-1,..., 4-n transmit a player operation request including the current position of the player in the game space as a key to the
ロードバランサ3は、クライアント4−1,・・・,4−nから受信したプレイヤー操作要求を、例えば、ラウンドロビンによって、振り分け装置2−1,2−2,・・・,2−nのいずれかにランダムに送信する。
The
振り分け装置2−1,2−2,・・・,2−nは、ロードバランサ3から受信したプレイヤー操作要求をサーバ1−1,1−2,・・・,1−nに振り分ける。振り分け装置2−1,2−2,・・・,2−nの各々は、サーバ−空間対応テーブルT1を有している。振り分け装置2−1,2−2,・・・,2−nはそれぞれ、同期処理をとることで、各自のサーバ−空間対応テーブルT1を同じにすることができる。
The distribution devices 2-1, 2-2,..., 2-n distribute the player operation requests received from the
図2に示すように、サーバ−空間対応テーブルT1は、空間名、空間左上頂点座標、空間縦長さ、空間横長さ、担当サーバといった欄を設定する。サーバ−空間対応テーブル50は、ゲーム空間を分割した空間ごとに作成されたレコードを有し、各レコードについて、前記欄の値を格納している。 As shown in FIG. 2, the server-space correspondence table T1 sets fields such as space name, space upper left vertex coordinate, space vertical length, space horizontal length, and server in charge. The server-space correspondence table 50 has a record created for each space obtained by dividing the game space, and stores the value of the field for each record.
「空間名」の欄には、ゲーム空間を上下左右の所定の単位に分割した該当空間の名称が格納される。
「空間左上頂点座標」の欄には、分割された該当空間の左上頂点の座標値が格納される。
「空間縦長さ」の欄には、分割された該当空間の縦方向の長さを示す値が格納される。
「空間横長さ」の欄には、分割された該当空間の横方向の長さを示す値が格納される。
「担当サーバ」の欄には、分割された該当空間担当するサーバの識別番号が格納される。
なお、サーバ−空間対応テーブルT1の空間名、空間左上頂点座標、空間縦長さ、空間横長さは、分割した空間ごとの「空間情報」を構成する。
In the “space name” column, the name of the corresponding space obtained by dividing the game space into predetermined units in the vertical and horizontal directions is stored.
In the “space upper left vertex coordinate” field, the coordinate value of the upper left vertex of the divided space is stored.
In the “space length” column, a value indicating the length in the vertical direction of the divided space is stored.
A value indicating the horizontal length of the divided space is stored in the “space horizontal length” column.
In the “server in charge” column, the identification number of the server in charge of the divided space is stored.
Note that the space name, space upper left vertex coordinate, space vertical length, and space horizontal length of the server-space correspondence table T1 constitute “space information” for each divided space.
振り分け装置2−1,2−2,・・・,2−nは、ロードバランサ3から受信したプレイヤー操作要求に含まれるキーを読み取り、プレイヤーの現在位置を把握し、サーバ−空間対応テーブルT1を参照して、プレイヤーの現在位置を含む空間を担当するサーバを特定し、特定したサーバにプレイヤー操作要求を振り分けることができる。
The distribution devices 2-1, 2-2,..., 2-n read the key included in the player operation request received from the
(ゲームサーバ装置1の構成)
図3に示すように、本実施形態のゲームサーバ装置1は、処理部10、通信部20、および、記憶部30を備える。
(Configuration of game server device 1)
As shown in FIG. 3, the
通信部20は、通信回線を介して情報を送受信する通信インターフェースによって構成され、内部バスなどを介して処理部10に接続されている。処理部10は、他のゲームサーバ装置1や、振り分け装置2−1,2−2,・・・,2−nと、情報の送受信を行うことができる。
The
記憶部30は、例えば、ハードディスク、フラッシュメモリ、ROM(Read Only Memory)、RAM(Random Access Memory)などの記憶装置である。記憶部30は、オンラインゲームを実現するためのアプリケーションを記憶している(図示略)。また、記憶部30は、複数のゲームサーバ装置1間で実行される分散処理を実現するためのプログラム(分散処理プログラム)を記憶している(図示略)。また、記憶部30は、例えば、振り分け装置2−1,2−2,・・・,2−nのサーバ−空間対応テーブルT1と同じサーバ−空間対応テーブルT1、自身の担当空間の境界情報T2、自身の担当空間内に存在するプレイヤーの状態データの原本(D1)、自身の担当空間に隣接する空間に存在するプレイヤーの状態データのレプリカ(D2)を記憶している。
The
自身の担当空間の境界情報T2は、自身の担当空間と隣接空間との境界を、隣接空間ごとに示す情報である。境界情報T2は、サーバ−空間対応テーブルT1の内容に基づいて作成することができる。隣接空間が自身の担当空間の上下左右に位置する場合には、境界は線であり、境界を、ゲーム空間の座標の点集合で表現することができる。また、隣接空間が自身の担当空間の右上、右下、左下、左上に位置する場合には、境界は点であり、境界を、ゲーム空間の1座標で表現することができる。 The boundary information T2 of the own assigned space is information indicating the boundary between the assigned assigned space and the adjacent space for each adjacent space. The boundary information T2 can be created based on the contents of the server-space correspondence table T1. When the adjacent space is positioned on the top, bottom, left, and right of its own assigned space, the boundary is a line, and the boundary can be represented by a set of points in the game space coordinates. Further, when the adjacent space is located at the upper right, lower right, lower left, or upper left of its own assigned space, the boundary is a point, and the boundary can be expressed by one coordinate of the game space.
処理部10は、ゲームサーバ装置1が実行する処理の全体を司る。処理部10は、例えば、記憶部30が記憶するプログラムをCPU(Central Processing Unit)が記憶部30のRAMに展開して実行することによって実現される。処理部10は、原本データ管理部11と、レプリカ配置部12と、負荷監視部13と、空間分割部14と、空間分割通知部15と、境界情報算出部16と、いった機能部を備えている。
The
原本データ管理部11は、ゲームサーバ装置1自身が担当する空間に存在するプレイヤーの状態データの原本を保存する。ゲームサーバ装置1の記憶部30に記憶される状態データの原本(D1)は、ゲームサーバ装置1自身の担当空間に存在するプレイヤーのものである。自身の担当空間に存在するプレイヤーが他の空間に移動した場合には、原本データ管理部11は、当該プレイヤーの状態データの原本をレプリカに切り替えて記憶部30に保存する。また、原本データ管理部11は、隣接する空間に居たプレイヤーが自身の担当する空間に移動したことを検出すると、当該プレイヤーの状態データの原本を記憶部30に記憶する。このとき、原本データ管理部11は、事前に保存していた当該プレイヤーの状態データのレプリカを用いる。
The original
レプリカ配置部12は、ゲームサーバ装置1自身が担当する空間に存在するプレイヤーに関して、当該プレイヤーの状態データのレプリカを、隣接する空間を担当する他のゲームサーバ装置1へコピー(配置)する。ゲームサーバ装置1の記憶部30に記憶される状態データのレプリカ(D2)は、ゲームサーバ装置1自身の担当空間に隣接する空間に存在するプレイヤーのものである。
The
負荷監視部13は、ゲームサーバ装置1自身の負荷を監視する。負荷監視部13が監視する負荷は、例えば、CPU使用率やメモリ使用量があるが、これらに限定されない。
The
空間分割部14は、負荷監視部13が監視する負荷が、所定の値を超えた場合には、自身の担当する空間を細分割して、当該細分割した空間の一つを新たなゲームサーバ装置1に割り当てる。空間分割部14は、担当空間の細分割を反映するように自身のサーバ−空間対応テーブルT1の内容を書き換える。よって、空間分割部14は、空間情報も細分割を反映するように書き換える。
When the load monitored by the
空間分割通知部15は、空間分割部14による細分割前の空間に隣接する空間を担当する他のゲームサーバ装置1に、この細分割を反映した空間情報を通知する。
The space
境界情報算出部16は、細分割前の空間を担当する他のゲームサーバ装置1の空間分割通知部15から通知された空間情報を受信した場合、受信した空間情報に基づいて、自身の担当する空間の境界情報を更新する。
When the boundary
(プレイヤーの隣接空間への移動に関する詳細)
ゲームサーバ装置1は、自身の担当空間に存在するプレイヤーの状態データ原本を有する。図4には、ゲーム空間を、空間A〜空間K、・・・に分割し、ゲームサーバ装置1に対応するサーバ1〜サーバ11、・・・が各空間を担当した場合において、サーバ6が担当する空間FにプレイヤーA、B(丸印で表現)が存在する様子が示されている。サーバ6の原本データ管理部11は、プレイヤーAのプレイヤー状態a(原本)と、プレイヤーBのプレイヤー状態b(原本)とを保存している。なお、「プレイヤー状態」という語は、「プレイヤーの状態データ」と同義である。
(Details about players moving to adjacent spaces)
The
ここで、サーバ6は、境界情報T2を用いて、空間Fに隣接する空間A,B,C,E,G,I,J,Kを迅速に特定することができる。サーバ6のレプリカ配置部12は、空間A,B,C,E,G,I,J,Kを担当するサーバ1,2,3,5,7,9,10,11へ、プレイヤー状態a,bのレプリカをコピーする。
Here, the server 6 can quickly specify the spaces A, B, C, E, G, I, J, and K adjacent to the space F using the boundary information T2. The
例えば、プレイヤーAが空間Fから空間Gに移動した場合、空間Gを担当するサーバ7の原本データ管理部11は、プレイヤーAを検出すると、既にコピー済みのプレイヤー状態aのレプリカを原本として保存する。これにより、従来行われていた、プレイヤーAの移動に伴うサーバ6,7間の状態データ移行処理を省略することができる。よって、サーバ7は、プレイヤーAに対する処理を迅速に開始することができ、空間移動時のゲーム中断時間を大幅に短縮することができる。
For example, when the player A moves from the space F to the space G, when the original
また、プレイヤーAの移動元となる空間Fは、移動先の空間Gから見て新たな隣接空間となる。このため、サーバ6は、プレイヤーAのプレイヤー状態aの原本をレプリカとして継続利用する。このとき、サーバ7のレプリカ配置部12が、サーバ6に対し、プレイヤー状態aの原本をレプリカとして保存するように指示する。
In addition, the space F that is the movement source of the player A becomes a new adjacent space as viewed from the movement destination space G. For this reason, the server 6 continues to use the original of the player state “a” of the player A as a replica. At this time, the
上記のように、隣接空間のすべてにレプリカを配置(コピー)すると、レプリケーション負荷が非常に大きいため、ゲームサーバ装置1の処理に相応の影響が生じる可能性が有る。このため、プレイヤーの移動先を予測してレプリカの配置先を絞り込む方法が考えられる。
As described above, when replicas are placed (copied) in all adjacent spaces, the replication load is very large, and there is a possibility that a corresponding influence will occur on the processing of the
(レプリカの配置先の絞り込み方法1)
例えば、プレイヤーの現在位置から所定の距離に及ぶ範囲を含む空間にのみレプリカを配置する。レプリケーションに要する時間内にプレイヤーが移動可能となる距離(開発者が予め規定)に対して、この距離よりも大きいという条件を満たす任意の距離をレプリカ配置の判定基準となるレプリカ判定距離として設定する。
(
For example, the replica is arranged only in a space including a range extending a predetermined distance from the current position of the player. For the distance that the player can move within the time required for replication (specified by the developer in advance), an arbitrary distance that satisfies the condition of being larger than this distance is set as a replica determination distance that is a criterion for replica placement. .
そして、プレイヤーの位置から隣接空間との境界までの距離を逐次算出し、レプリカ判定距離と比較して、境界がレプリカ判定距離内にある場合に、当該隣接空間を担当するサーバへレプリカをコピーする。換言すれば、
プレイヤーの位置座標:(Xp,Yp)
レプリカ判定距離:r
各空間の境界を構成する座標:(Xs,Ys)
レプリカ配置判定式:(Xp−Xs)2 + (Yp−Ys)2 < r2
とした場合、
上記レプリカ判定式を満たす(Xs,Ys)を持つ隣接空間にレプリカを配置する。なお、上下の隣接空間に対しては、Xp−Xs=0として上記レプリカ配置判定式を用いる。また、左右の隣接空間に対しては、Yp−Ys=0として上記レプリカ配置判定式を用いる。
Then, the distance from the player position to the boundary with the adjacent space is sequentially calculated, and compared with the replica determination distance, when the boundary is within the replica determination distance, the replica is copied to the server in charge of the adjacent space. . In other words,
Player position coordinates: (Xp, Yp)
Replica determination distance: r
Coordinates constituting the boundary of each space: (Xs, Ys)
Replica arrangement determination formula: (Xp−Xs) 2 + (Yp−Ys) 2 <r 2
If
A replica is arranged in an adjacent space having (Xs, Ys) that satisfies the replica determination formula. For the upper and lower adjacent spaces, the above replica arrangement determination formula is used with Xp−Xs = 0. For the left and right adjacent spaces, the above-described replica arrangement determination formula is used with Yp−Ys = 0.
図5によれば、プレイヤーAが空間F内の図5に示す位置に配置されているとすると、プレイヤーAの現在位置からレプリカ判定距離に及ぶ範囲を含む空間は、空間B,C,Gとなる。このため、空間Fを担当するサーバ6のレプリカ配置部12は、空間B,C,Gを担当するサーバ2,3,7のみへ、プレイヤー状態aのレプリカをコピーする。
また、プレイヤーBが空間F内の図5に示す位置に配置されているとすると、プレイヤーBの現在位置からレプリカ判定距離に及ぶ範囲を含む空間は、空間A,B,Eとなる。このため、空間Fを担当するサーバ6のレプリカ配置部12は、空間A,B,Eを担当するサーバ1,2,5のみへ、プレイヤー状態aのレプリカをコピーする。
According to FIG. 5, if the player A is arranged in the position shown in FIG. 5 in the space F, the space including the range extending from the current position of the player A to the replica determination distance is represented by spaces B, C, and G. Become. Therefore, the
Further, assuming that the player B is arranged in the position shown in FIG. 5 in the space F, the spaces including the range extending from the current position of the player B to the replica determination distance are spaces A, B, and E. Therefore, the
(レプリカの配置先の絞り込み方法2)
例えば、プレイヤーの位置を所定周期ごとに保持し、保持した位置の履歴から速度ベクトルを算出し、速度ベクトルを元にして、移動が継続した場合にプレイヤーの移動先となる空間を特定し、その特定した空間の境界に到達するまでにかかる時間を算出する。
(
For example, the player's position is held every predetermined period, the velocity vector is calculated from the history of the held position, and the space to which the player moves when the movement continues based on the velocity vector is determined. Calculate the time it takes to reach the boundary of the identified space.
そして、この算出した時間がレプリケーションに要する時間以下である場合に、移動先となる隣接空間を担当するサーバへレプリカをコピーする。換言すれば、
プレイヤーの位置座標:(Xp,Yp)
プレイヤーの速度ベクトル:(Vx,Vy)
レプリケーションに要する時間:t
速度ベクトルと交わる、空間の境界の点の座標:(Xs,Ys)
とした場合、
レプリカ配置判定式(左右方向の隣接空間到達時例):|Xs−Xp|/Vx<tを満たすとき、または、
レプリカ配置判定式(上下方向の隣接空間到達時例):|Ys−Yp|/Vy<tを満たすとき、該当隣接空間にレプリカを配置する。
When the calculated time is equal to or shorter than the time required for replication, the replica is copied to the server in charge of the adjacent space serving as the movement destination. In other words,
Player position coordinates: (Xp, Yp)
Player velocity vector: (Vx, Vy)
Time required for replication: t
Coordinates of space boundary points that intersect the velocity vector: (Xs, Ys)
If
Replica arrangement determination formula (example of arrival in adjacent space in the left-right direction): When | Xs−Xp | / Vx <t is satisfied, or
Replica placement determination formula (example when reaching the adjacent space in the vertical direction): When satisfying | Ys−Yp | / Vy <t, a replica is placed in the corresponding adjacent space.
図6によれば、プレイヤーAが空間F内の図6に示す位置に配置されているとすると、プレイヤーAの速度ベクトルは、空間Bとの境界と交わる。このため、空間Fを担当するサーバ6のレプリカ配置部12は、レプリカ配置判定式(上下方向の隣接空間到達時例)を満たすタイミングで、空間Bを担当するサーバ2のみへ、プレイヤー状態aのレプリカをコピーする。
また、プレイヤーBが空間F内の図6に示す位置に配置されているとすると、プレイヤーBの速度ベクトルは、空間Gとの境界と交わる。このため、空間Fを担当するサーバ6のレプリカ配置部12は、レプリカ配置判定式(左右方向の隣接空間到達時例)を満たすタイミングで、空間Gを担当するサーバ7のみへ、プレイヤー状態bのレプリカをコピーする。
According to FIG. 6, assuming that the player A is arranged at the position shown in FIG. 6 in the space F, the velocity vector of the player A intersects with the boundary with the space B. For this reason, the
Further, assuming that the player B is disposed in the position shown in FIG. 6 in the space F, the velocity vector of the player B intersects with the boundary with the space G. For this reason, the
(プレイヤーの移動に伴う負荷の偏りに関する詳細)
プレイヤーは(イベントの進行具合などの考慮しなければ)分割されたゲーム空間を自由に移動することができる。このため、サーバ間での負荷の偏りが発生する可能性があり、特定の空間に多数のプレイヤーが集中し、その空間を担当するサーバが過負荷になり、システムがダウンするおそれがある。また、プレイヤーの位置は、プレイヤー操作要求によって随時変化する。このため、各サーバの担当空間を上記のように上下左右に均一に分割して設定するのではなく、負荷を予測して、負荷に応じて空間の大きさや形状をアレンジするように設定することは困難である。
(Details regarding load bias due to player movement)
The player can move freely in the divided game space (unless the event progress is taken into consideration). For this reason, there is a possibility that the load is unbalanced among the servers, a large number of players are concentrated in a specific space, the server in charge of the space is overloaded, and the system may be down. Further, the position of the player changes at any time according to a player operation request. For this reason, instead of setting the server's assigned space uniformly in the vertical and horizontal directions as described above, predict the load and set the size and shape of the space according to the load. It is difficult.
そこで、ゲームサーバ装置1は、負荷監視部13によって、担当空間ごとの負荷を監視し、プレイヤーの移動などによって負荷が閾値を超えた場合には、空間分割部14によって担当空間を細分割する。例えば、空間を細分割する方法の一例として、2次元座標で示される領域の面積が半分になるように、縦または横に空間を細分割する。
図7には、空間Bを担当するサーバ2が、プレイヤーが空間Bに集中し過負荷になったため、空間分割部14によって空間Bを縦に細分割する様子が図示されている。空間Bは細分割されて、左半分は空間B1、右半分は空間B2となる。
Therefore, the
FIG. 7 illustrates a state in which the
細分割された空間Bについて、空間B1はサーバ2が引き継ぐ一方、空間B2は新たなサーバ2aを増設し割り当てる。サーバ2は、新たなサーバ2aに所定のデータを移行して、サーバ2aに処理を引き継がせる。このデータには、空間B2に存在するプレイヤーの状態データが含まれる。また、サーバ2は、自身のサーバ−空間対応テーブルT1を更新して、空間B1の領域のこと、空間B1を担当するサーバ2のこと、空間B2の領域のこと、空間B2を担当するサーバ2aのことを反映させる。その結果、空間B1,B2に対応する空間情報が生成される。
また、サーバ2は、振り分け装置2−1,2−2,・・・,2−nに対して、振り分け装置2−1,2−2,・・・,2−nのサーバ−空間対応テーブルT1を更新するように要求して、空間B1の領域のこと、空間B1を担当するサーバ2のこと、空間B2の領域のこと、空間B2を担当するサーバ2aのことを反映させる。
Regarding the subdivided space B, the
In addition, the
細分割される前の空間(図7の空間B)に隣接する空間(図7の空間A,C,D)を担当するゲームサーバ装置1のなかには、自身が担当する空間に存在するプレイヤーの移動先が増加するものが存在する(図7の空間D)。このため、移動先が増加するゲームサーバ装置1は、当該移動先の増加を即座に認識して、レプリカの再配置を行う必要がある。このことを踏まえて、細分割される前の空間Bを担当するサーバ2の空間分割通知部15は、隣接空間(A,C,D)を担当するサーバ(1,3,4)へ、細分割を反映した空間情報を通知する。空間分割通知部15の通知内容は、例えば、追加された新たなサーバ(図7のサーバ2a)の担当空間(図7の空間B2)の形状が長方形であれば、当該長方形の頂点の座標などを含む。
In the
細分割された空間の隣接空間を担当するゲームサーバ装置1は、境界情報算出部16によって、細分割される前の空間を担当するゲームサーバ装置1の空間分割通知部15からの通知内容に基づいて、自身の境界情報を更新する。図8によれば、細分割された空間B1,B2に隣接する空間Dを担当するサーバ4は、境界情報算出部16によって、空間Dの境界情報(サーバ4の記憶部30が記憶する境界情報T2)を、隣接空間B1,B2、および、これらの空間の境界線を構成する座標を特定するように更新する。
The
隣接空間の数が増加した空間を担当するゲームサーバ装置1は、レプリカ配置部12によって、空間情報および境界情報に基づいて、細分割された空間の各々へ、自身の空間に存在するプレイヤーの状態データのレプリカを配置する。よって、細分割された空間に対してもプレイヤー移動時の処理の引き継ぎは、すでに説明したレプリカから原本への切り替えによって、迅速に行うことができる。図8には、サーバ4が、担当の空間Dのプレイヤー状態p(原本)のレプリカを、細分割された空間B1,B2に配置する様子が示されている。
The
また、空間の細分割があっても、隣接空間の数が増加していないゲームサーバ装置1は、細分割によって隣接ではなくなった空間に存在するプレイヤーの状態データのレプリカを廃棄する。図8には明示していないが、細分割前の空間Bは、空間A,Cに隣接していたが、空間Bを空間B1,B2に細分割することで、空間B2は、もはや、空間A,Cに隣接しなくなった。このため、細分割前の空間Bに存在しており、細分割後の空間B2に存在するプレイヤーについては、空間B2を担当するサーバ2aのレプリカ配置部12は、対応の状態データを空間A,Cに配置しないように処理する。
In addition, even if there is a subdivision of the space, the
これまでに説明した機能は、ミドルウェアで実装可能であり、アプリケーションの種別によらず、汎用的に利用可能であるという利点がある。 The functions described so far can be implemented by middleware, and have the advantage that they can be used universally regardless of the type of application.
(処理)
次に、本実施形態のゲームサーバ装置の処理について説明する。
図9は、プレイヤーの隣接空間への移動に関する処理を示すフローチャートである。この処理は、ステップS1から開始する。
(processing)
Next, processing of the game server device of this embodiment will be described.
FIG. 9 is a flowchart showing processing relating to the movement of the player to the adjacent space. This process starts from step S1.
ステップS1にて、ゲームサーバ装置1は、原本データ管理部11によって、自身の担当空間に存在する担当のプレイヤーに関して、このプレイヤーの状態データの原本を記憶部30に保存する。また、ゲームサーバ装置1は、原本データ管理部11によって、クライアントから随時取得するプレイヤー操作要求に応じてプレイヤーの動作処理を実行するとともに、当該プレイヤーの状態データの原本を更新する。
In step S <b> 1, the
次に、ステップS2にて、ゲームサーバ装置1は、レプリカ配置部12によって、自身の担当空間の隣接空間に、担当プレイヤーの状態データのレプリカをコピーする。このとき、既に説明したように、レプリカ配置部12は、レプリカ判定距離やプレイヤーの速度ベクトルを用いてレプリカの配置先を絞り込むことができる。また、ゲームサーバ装置1は、レプリカ配置部12によって、当該プレイヤーの状態データの原本の更新に応じて、当該プレイヤーの状態データのレプリカを更新し、隣接空間にコピーする。
Next, in step S <b> 2, the
次に、ステップS3にて、ゲームサーバ装置1は、担当のプレイヤーが隣接空間へ移動したか否かを判定する。移動した場合(ステップS3でYes)、当該プレイヤーはもはや担当外になったことを意味し、ステップS4に進む。一方、移動していない場合、(ステップS3でNo)、ゲームサーバ装置1が当該プレイヤーの担当を継続することを意味し、ステップS1に戻る。
Next, in step S3, the
ステップS4にて、ゲームサーバ装置1は、レプリカ配置部12によって、プレイヤーの移動先となる隣接空間を担当する他のゲームサーバ装置1に対して、事前にコピーした、移動先のレプリカを原本として切り替えるように指示する。他のゲームサーバ装置1はこの指示に応じて、既に保存している対象プレイヤーの状態データのレプリカを原本として使用し、対象プレイヤーの動作処理を開始する。また、他のゲームサーバ装置1のレプリカ配置部12は、ゲームサーバ装置1に対し、対象プレイヤーの状態データの原本をレプリカとして保存するように指示する。
In step S4, the
ステップS5にて、ゲームサーバ装置1は、原本データ管理部11によって、他のゲームサーバ装置1のレプリカ配置部12からの指示に応じて、もはや担当外となったプレイヤーの状態の原本をレプリカとして記憶部30に保存する。
In step S5, the
図9の処理によれば、プレイヤーが隣接空間に移動した場合、ゲームサーバ装置間で当該プレイヤーの状態データを移行させる代わりに、隣接空間を担当するゲームサーバ装置が、すでにコピー済みのレプリカを原本に切り替えてプレイヤーの処理を継続することができる。よって、状態データの移行に伴う処理遅延やプレイの一時中断を回避しサービス品質の低下をもたらすことはない。
したがって、分散処理でオンラインゲームを実行するゲームサーバ装置に関して、オンラインゲームのプレイヤーが現在いる空間から隣の空間に移動する際の処理遅延を緩和することができる。
According to the processing of FIG. 9, when a player moves to an adjacent space, the game server device in charge of the adjacent space copies the original copy that has already been copied, instead of transferring the state data of the player between the game server devices. The player's processing can be continued by switching to. Therefore, the processing delay and the play interruption associated with the state data transfer are avoided, and the service quality is not deteriorated.
Therefore, regarding a game server device that executes an online game by distributed processing, it is possible to reduce processing delay when the player of the online game moves from the current space to the adjacent space.
また、レプリカ判定距離やプレイヤーの速度ベクトルを用いて、状態データのレプリカの配置先を絞り込むことができるため、レプリケーション負荷を小さくすることができる。 Further, the replica placement distance can be narrowed down by using the replica determination distance and the player velocity vector, so that the replication load can be reduced.
図10は、空間の細分割に関する処理を示すフローチャートである。この処理は、ステップS11から開始する。 FIG. 10 is a flowchart showing processing relating to space subdivision. This process starts from step S11.
ステップS11にて、ゲームサーバ装置1は、負荷監視部13によって、ゲームサーバ装置1自身の負荷を監視する。
In step S <b> 11, the
次に、ステップS12にて、ゲームサーバ装置1は、負荷監視部13によって、ゲームサーバ装置1自身の負荷が、予め設定した閾値(例えば、ゲームサーバ装置1の記憶部30に記憶されている)を超えたか否かを判定する。負荷が閾値を超えた場合(ステップS12でYes)、ゲームサーバ装置1が過負荷状態であることを意味し、ステップS13に進む。一方、負荷が閾値を超えていない場合(ステップS12でNo)、ゲームサーバ装置1が過負荷状態はないことを意味し、ステップS11に戻る。
Next, in step S12, the
ステップS13にて、ゲームサーバ装置1は、空間分割部14によって、自身の担当空間を細分割する。このとき、ゲームサーバ装置1は、細分割した空間の一つを引き続き担当し、残りを新たなゲームサーバ装置1に割り当てる。
In step S <b> 13, the
ステップS14にて、ゲームサーバ装置1は、空間分割部14によって、自身のサーバ−空間対応テーブルT1の内容を更新して、空間分割部14による細分割を反映する。このとき、細分割された空間の空間情報が生成される。また、ゲームサーバ装置1は、振り分け装置2−1,2−2,・・・,2−nに対して、振り分け装置2−1,2−2,・・・,2−nのサーバ−空間対応テーブルT1を更新するように要求する。振り分け装置2−1,2−2,・・・,2−nの各々は、自身のサーバ−空間対応テーブルT1を更新して、上記の細分割を反映する。
In step S <b> 14, the
ステップS15にて、ゲームサーバ装置1は、空間分割通知部15によって、細分割前の担当空間の隣接空間を担当する隣接サーバへ細分割後の空間情報を通知する。通知を受けた隣接サーバの境界情報算出部16は、通知内容に応じて自身の境界情報を更新する。
In step S <b> 15, the
ステップS16にて、ゲームサーバ装置1は、レプリカ配置部12によって、空間分割部14による細分割に応じて、担当しているプレイヤーの状態データのレプリカを、隣接空間にコピーする。また、ゲームサーバ装置1は、レプリカ配置部12によって、当該プレイヤーの状態データの原本の更新に応じて、当該プレイヤーの状態データのレプリカを更新し、隣接空間にコピーする。
In step S <b> 16, the
図10の処理によれば、空間の細分割によって、過負荷となったゲームサーバ装置に対して、新たなゲームサーバ装置が負荷を分担することができるため、システムのダウンを回避することができる。 According to the process of FIG. 10, since the new game server device can share the load with respect to the game server device that is overloaded due to the subdivision of the space, it is possible to avoid a system down. .
(変形例)
レプリカ配置部12は、1つの隣接空間に対して、状態データのレプリカを、1つだけでなく2以上配置することができる。
また、本実施形態の空間分割部14は、1つの空間を2だけでなく、3以上に細分割することができる。この場合、分割する方向は、縦や横に限らず、斜め、折れ線、曲線で分割することもできる。
(Modification)
The
In addition, the
本実施形態で説明した種々の技術を適宜組み合わせた技術を実現することもできる。
本実施形態で説明したソフトウェアをハードウェアとして実現することもでき、ハードウェアをソフトウェアとして実現することもできる。
その他、ハードウェア、ソフトウェア、フローチャートなどについて、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
A technique obtained by appropriately combining various techniques described in the present embodiment can also be realized.
The software described in this embodiment can be realized as hardware, and the hardware can also be realized as software.
In addition, hardware, software, flowcharts, and the like can be changed as appropriate without departing from the spirit of the present invention.
1 ゲームサーバ装置
2−1〜2−n 振り分け装置
3 ロードバランサ
4−1〜4−n クライアント
10 処理部
11 原本データ管理部
12 レプリカ配置部
13 負荷監視部
14 空間分割部
15 空間分割通知部
16 境界情報算出部
20 通信部
30 記憶部
T1 サーバ−空間対応テーブル
T2 境界情報
D1 状態データの原本
D2 状態データのレプリカ
DESCRIPTION OF
Claims (5)
自身の担当する空間に存在するプレイヤーの状態データの原本を保存する原本データ管理部と、
隣接する空間を担当する他のゲームサーバ装置へ、前記状態データのレプリカをコピーするレプリカ配置部と、を備え、
前記原本データ管理部は、
前記隣接する空間に居たプレイヤーが前記自身の担当する空間に移動したことを検出すると、当該プレイヤーの状態データのレプリカを原本として保存する、
ことを特徴とするゲームサーバ装置。 A stateful game server device in charge of a space obtained by dividing a game space into predetermined units,
An original data management unit for storing original state data of players existing in the space in charge of the player,
A replica placement unit that copies a replica of the state data to another game server device in charge of an adjacent space;
The original data management unit
When it is detected that the player in the adjacent space has moved to the space in charge of the player, a replica of the player's state data is stored as an original,
The game server apparatus characterized by the above-mentioned.
ことを特徴とする請求項1に記載のゲームサーバ装置。 The replica placement unit copies a replica of the player's state data to a game server device in charge of a space including a range extending a predetermined distance from the current position of the player.
The game server device according to claim 1.
ことを特徴とする請求項1に記載のゲームサーバ装置。 The replica placement unit predicts a space to move next from the velocity vector of the player, and copies a replica of the player's state data to the game server device in charge of the predicted space.
The game server device according to claim 1.
前記負荷が所定の値を超えた場合には、自身の担当する空間を細分割して、当該細分割した空間の一つを新たなゲームサーバ装置に割り当てる空間分割部と、
前記細分割前の空間に隣接する空間を担当する他のゲームサーバ装置に、前記細分割を反映した空間情報を通知する空間分割通知部と、
前記細分割前の空間を担当する他のゲームサーバ装置から前記空間情報を受信した場合、自身の担当する空間の境界情報を更新する境界情報算出部と、をさらに備える、
ことを特徴とする請求項1から請求項3のいずれか一項に記載のゲームサーバ装置。 A load monitoring unit for monitoring the load of its own game server device;
When the load exceeds a predetermined value, a space division unit that subdivides the space in charge of the load and allocates one of the subdivided spaces to a new game server device;
A space division notifying unit for notifying the other game server device in charge of the space adjacent to the space before the subdivision of the space information reflecting the subdivision;
A boundary information calculation unit that updates the boundary information of the space in charge when the space information is received from another game server device in charge of the space before the subdivision;
The game server device according to claim 1, wherein the game server device is a game server device.
前記ゲームサーバ装置が、
自身の担当する空間に存在するプレイヤーの状態データの原本を保存するステップと、
隣接する空間を担当する他のゲームサーバ装置へ、前記状態データのレプリカをコピーするステップと、
前記隣接する空間に居たプレイヤーが前記自身の担当する空間に移動したことを検出すると、当該プレイヤーの状態データのレプリカを原本として保存するステップと、を実行する、
ことを特徴とする分散処理方法。 A distributed processing method in a stateful game server device in charge of a space obtained by dividing a game space into predetermined units,
The game server device is
A step of saving the original state data of the player existing in the space that he is in charge of;
Copying the state data replica to another game server device in charge of the adjacent space;
When it is detected that the player in the adjacent space has moved to the space in charge of the player, a step of storing a replica of the player's state data as an original is performed.
A distributed processing method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015157892A JP2017037446A (en) | 2015-08-10 | 2015-08-10 | Game server device and distribution processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015157892A JP2017037446A (en) | 2015-08-10 | 2015-08-10 | Game server device and distribution processing method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017037446A true JP2017037446A (en) | 2017-02-16 |
Family
ID=58048550
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015157892A Pending JP2017037446A (en) | 2015-08-10 | 2015-08-10 | Game server device and distribution processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017037446A (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110433496A (en) * | 2019-08-14 | 2019-11-12 | 咪咕互动娱乐有限公司 | Cloud game resource allocation method, electronic equipment and storage medium |
JP6838187B1 (en) * | 2020-05-29 | 2021-03-03 | 株式会社Cygames | Server, game system and processing method |
KR20210097205A (en) * | 2018-12-20 | 2021-08-06 | 소니 인터랙티브 엔터테인먼트 엘엘씨 | massively multiplayer compute |
JP2021524108A (en) * | 2018-05-14 | 2021-09-09 | 上海掌門科技有限公司Shanghai Zhangmen Science And Technology Co., Ltd. | How to handle application partitions, devices and computer readable storage media |
JP2022521012A (en) * | 2019-02-21 | 2022-04-04 | ソニー・インタラクティブエンタテインメント エルエルシー | Transactional memory synchronization |
CN114979164A (en) * | 2022-04-14 | 2022-08-30 | 网易(杭州)网络有限公司 | Virtual room allocation method and device and electronic equipment |
WO2023047743A1 (en) * | 2021-09-23 | 2023-03-30 | 株式会社セガ | Information processing device and execution switching system |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11328125A (en) * | 1998-05-15 | 1999-11-30 | Dainippon Printing Co Ltd | Virtual space share system |
JP2005234633A (en) * | 2004-02-17 | 2005-09-02 | Sony Corp | Service extension method |
JP2007528762A (en) * | 2004-02-05 | 2007-10-18 | エヌエイチエヌ コーポレーション | Data distribution processing method and data distribution processing system for online game server |
JP2013208426A (en) * | 2012-03-22 | 2013-10-10 | Emprie Technology Development LLC | Load balancing for game |
-
2015
- 2015-08-10 JP JP2015157892A patent/JP2017037446A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11328125A (en) * | 1998-05-15 | 1999-11-30 | Dainippon Printing Co Ltd | Virtual space share system |
JP2007528762A (en) * | 2004-02-05 | 2007-10-18 | エヌエイチエヌ コーポレーション | Data distribution processing method and data distribution processing system for online game server |
JP2005234633A (en) * | 2004-02-17 | 2005-09-02 | Sony Corp | Service extension method |
JP2013208426A (en) * | 2012-03-22 | 2013-10-10 | Emprie Technology Development LLC | Load balancing for game |
Non-Patent Citations (1)
Title |
---|
永石博憲他3名: "放送型サイバースペースにおけるアバタの移動特性を考慮した空間モデルデータのプリフェッチ方式", 情報処理学会研究報告, vol. 第2005巻,第68号, JPN6014018406, 15 July 2005 (2005-07-15), JP, pages 699 - 704 * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021524108A (en) * | 2018-05-14 | 2021-09-09 | 上海掌門科技有限公司Shanghai Zhangmen Science And Technology Co., Ltd. | How to handle application partitions, devices and computer readable storage media |
JP7259037B2 (en) | 2018-12-20 | 2023-04-17 | ソニー・インタラクティブエンタテインメント エルエルシー | massive multiplayer compute |
KR102617739B1 (en) * | 2018-12-20 | 2023-12-27 | 소니 인터랙티브 엔터테인먼트 엘엘씨 | Massive Multiplayer Compute |
KR20210097205A (en) * | 2018-12-20 | 2021-08-06 | 소니 인터랙티브 엔터테인먼트 엘엘씨 | massively multiplayer compute |
JP2022513869A (en) * | 2018-12-20 | 2022-02-09 | ソニー・インタラクティブエンタテインメント エルエルシー | Massive Multiplayer Comp |
US11628356B2 (en) | 2018-12-20 | 2023-04-18 | Sony Interactive Entertainment LLC | Massive multi-player compute |
JP7308964B2 (en) | 2019-02-21 | 2023-07-14 | ソニー・インタラクティブエンタテインメント エルエルシー | transactional memory synchronization |
JP2022521012A (en) * | 2019-02-21 | 2022-04-04 | ソニー・インタラクティブエンタテインメント エルエルシー | Transactional memory synchronization |
CN110433496A (en) * | 2019-08-14 | 2019-11-12 | 咪咕互动娱乐有限公司 | Cloud game resource allocation method, electronic equipment and storage medium |
CN110433496B (en) * | 2019-08-14 | 2023-07-07 | 咪咕互动娱乐有限公司 | Cloud game resource allocation method, electronic device and storage medium |
WO2021241476A1 (en) * | 2020-05-29 | 2021-12-02 | 株式会社Cygames | Server, game system, and processing method |
JP2021186224A (en) * | 2020-05-29 | 2021-12-13 | 株式会社Cygames | Server, game system, and processing method |
JP6838187B1 (en) * | 2020-05-29 | 2021-03-03 | 株式会社Cygames | Server, game system and processing method |
WO2023047743A1 (en) * | 2021-09-23 | 2023-03-30 | 株式会社セガ | Information processing device and execution switching system |
CN114979164A (en) * | 2022-04-14 | 2022-08-30 | 网易(杭州)网络有限公司 | Virtual room allocation method and device and electronic equipment |
CN114979164B (en) * | 2022-04-14 | 2023-11-17 | 网易(杭州)网络有限公司 | Virtual room distribution method and device and electronic equipment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2017037446A (en) | Game server device and distribution processing method | |
EP3069263B1 (en) | Session idle optimization for streaming server | |
US20060217201A1 (en) | Handling of players and objects in massive multi-player on-line games | |
US10130885B1 (en) | Viewport selection system | |
RU2701118C2 (en) | Multimode server data processing center administration | |
Lee et al. | A scalable dynamic load distribution scheme for multi-server distributed virtual environment systems with highly-skewed user distribution | |
Bezerra et al. | A load balancing scheme for massively multiplayer online games | |
US20060258462A1 (en) | System and method of seamless game world based on server/client | |
EP3087722B1 (en) | Peer-to-peer network prioritizing propagation of objects through the network | |
WO2014082052A4 (en) | Scaling computing clusters | |
CN103701916A (en) | Dynamic load balancing method of distributed storage system | |
US10402014B2 (en) | Input control assignment | |
Denault et al. | Triangle-based obstacle-aware load balancing for massively multiplayer games | |
JP6569692B2 (en) | Management server, communication system, management server control method, and program | |
CN113546416A (en) | Game scene processing method and device, computer equipment and storage medium | |
JP2007164252A (en) | System managing object in virtual space | |
JP6383336B2 (en) | Server management apparatus and server management method | |
JP2015176350A (en) | Cache management device and communication device | |
US11161045B1 (en) | Content item forking and merging | |
Van Den Bossche et al. | A platform for dynamic microcell redeployment in massively multiplayer online games | |
KR20230034182A (en) | Spectator system in online games | |
Hu et al. | P2P consistency support for large-scale interactive applications | |
Kohana et al. | Dynamic data allocation scheme for multi-server web-based MORPG system | |
Brown et al. | Aura projection for scalable real-time physics | |
JP5745445B2 (en) | Management device and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170905 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180918 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20181019 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20181211 |