CN110354491A - 全球同服游戏系统、数据同步方法、电子设备及介质 - Google Patents
全球同服游戏系统、数据同步方法、电子设备及介质 Download PDFInfo
- Publication number
- CN110354491A CN110354491A CN201910716479.1A CN201910716479A CN110354491A CN 110354491 A CN110354491 A CN 110354491A CN 201910716479 A CN201910716479 A CN 201910716479A CN 110354491 A CN110354491 A CN 110354491A
- Authority
- CN
- China
- Prior art keywords
- data
- zone server
- server
- code
- module
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 230000001360 synchronised effect Effects 0.000 claims description 33
- 239000011232 storage material Substances 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 11
- 238000004891 communication Methods 0.000 claims description 10
- 238000010586 diagram Methods 0.000 description 10
- 238000013461 design Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000013508 migration Methods 0.000 description 2
- 230000005012 migration Effects 0.000 description 2
- 230000001934 delay Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/79—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例提供一种全球同服游戏系统、数据同步方法、电子设备及介质,该方法包括:第一区服务器、第二区服务器以及同步数据模块,其中,第一区服务器与第二区服务器通过同步数据模块进行通信连接,而同步数据模块用于对第一区服务器和第二区服务器中的游戏数据进行同步,以使第一区服务器和第二区服务器中的游戏数据保持一致。通过本发明实施例提供的方法中,使得不同区域服务器的玩家在需要访问获取跨区域数据时,可以直接从本地直接获取相应的游戏数据,从而在支持玩家跨区域进行数据访问的同时,大大提高了玩家数据访问的速率。
Description
技术领域
本发明涉及游戏技术领域,尤其涉及一种全球同服游戏系统、数据同步方法、电子设备及介质。
背景技术
随着互联网技术的发展,不同国家以及地区的玩家在同一全球服务器中游戏的需求也日益增强。在游戏领域,越多的玩家就意味着更强的可玩性和越多的娱乐模式。但是,在面向全球玩家同服的游戏中,玩家的数据同步是一个很大的挑战。
目前,在面向全球玩家同服的游戏中,由于玩家和玩家之间相距很远,仅仅是网络延迟就可以达到几百毫秒的时延,这使得玩家的数据同步非常的困难,且同步时间也非常的耗时。在现有技术中,一般是采用中央服务器实现,当玩家需要拉取其他服务器上玩家的数据时,就通过该中央服务器去拉取玩家的信息。
但是,在全球同服的架构下,这种通过中央服务器进行逐一拉取数据的方式非常的费时且繁琐,中央服务器首先需要获取每个玩家所在的区域,然后再向该区域的数据库发出请求,在获得数据响应之后再发送给请求指定玩家。
发明内容
本发明提供一种全球同服游戏系统、数据同步方法、电子设备及介质,以在支持玩家跨区域进行数据访问的同时,进一步提高玩家数据访问的速率。
第一方面,本发明提供一种全球同服游戏系统,包括:第一区服务器、第二区服务器以及同步数据模块;
所述第一区服务器与所述第二区服务器通过所述同步数据模块进行通信连接;
所述同步数据模块用于对所述第一区服务器和所述第二区服务器中的游戏数据进行同步,以使所述第一区服务器和所述第二区服务器中的所述游戏数据保持一致。
在一种可能的设计中,所述第一区服务器包括第一数据协调模块,所述第二区服务器包括第二数据协调模块;
所述第一数据协调模块与所述第二数据协调模块通过所述同步数据模块进行通信连接;
所述第一数据协调模块用于为所述第一区服务器中的第一写入数据分配第一编码;
所述第二数据协调模块用于为所述第二区服务器中的第二写入数据分配第二编码;
其中,所述第一编码区别与所述第二编码。
在一种可能的设计中,当所述第一数据协调模块为所述第一区服务器中的所述第一写入数据分配所述第一编码之后,所述第一数据协调模块将所述第一编码通过所述同步数据模块同步至所述第二数据协调模块,以使所述第二数据协调模块根据所述第一编码以及预设编码规则为所述第二区服务器中的所述第二写入数据分配所述第二编码;或者,
当所述第二数据协调模块为所述第二区服务器中的所述第二写入数据分配所述第二编码之后,所述第二数据协调模块将所述第二编码通过所述同步数据模块同步至所述第一数据协调模块,以使所述第一数据协调模块根据所述第二编码以及预设编码规则为所述第一区服务器中的所述第一写入数据分配所述第一编码。
在一种可能的设计中,当所述第一区服务器通过所述同步数据模块将所述第一编码以及所述第一写入数据同步至所述第二区服务器,所述第二区服务器根据所述第一编码以及所述第二编码确定所述第一写入数据与所述第二写入数据在所述第二区服务器中的存储顺序;
当所述第二区服务器通过所述同步数据模块将所述第二编码以及所述第二写入数据同步至所述第一区服务器,所述第一区服务器根据所述第一编码以及所述第二编码确定所述第一写入数据与所述第二写入数据在所述第二区服务器中的存储顺序。
在一种可能的设计中,所述第一区服务器包括:第一存储代理模块以及第一数据库,所述第二区服务器包括:第二存储代理模块以及第二数据库;
所述第一存储代理模块与所述第二存储代理模块通过所述同步数据模块进行通信连接;
所述第一存储代理模块用于从所述第一数据库读取所述游戏数据和/或向所述第一数据库中写入所述游戏数据;
所述第二存储代理模块用于从所述第二数据库读取所述游戏数据和/或向所述第二数据库中写入所述游戏数据;
以使所述第一数据库和所述第二数据库中的所述游戏数据保持一致。
在一种可能的设计中,当所述第一区服务器发生故障时,所述第一区服务器对应的玩家设备连接至所述第二区服务器,所述玩家设备向所述第二区服务器写入所述游戏数据;
当所述第一区服务器恢复服务时,所述第二区服务器通过所述同步数据模块将所述游戏数据同步至所述第一区服务器;或者,
当所述第二区服务器发生故障时,所述第二区服务器对应的玩家设备连接至所述第一区服务器,所述玩家设备向所述第一区服务器写入所述游戏数据;
当所述第二区服务器恢复服务时,所述第一区服务器通过所述同步数据模块将所述游戏数据同步至所述第二区服务器。
第二方面,本发明还提供一种数据同步方法,应用于第一方面中提供的任意一种可能的全球同服游戏系统,所述方法,包括:
将所述第一区服务器中存储的第一游戏数据同步至所述第二区服务器;
将所述第二区服务器中存储的第二游戏数据同步至所述第一区服务器;
以使所述第一区服务器与所述第二区服务器分别根据所述第一游戏数据以及所述第二游戏数据生成所述游戏数据,以使所述第一区服务器和所述第二区服务器中的所述游戏数据保持一致。
在一种可能的设计中,所述第一区服务器包括第一数据协调模块,所述第二区服务器包括第二数据协调模块;所述方法,还包括:
将所述第一数据协调模块为所述第一区服务器中的第一写入数据分配第一编码同步至所述第二区服务器;
将所述第二数据协调模块为所述第二区服务器中的第二写入数据分配第二编码同步至所述第一区服务器;
以使所述第一区服务器与所述第二区服务器分别根据所述第一编码以及所述第二编码确定所述第一写入数据与所述第二写入数据的存储顺序。
第三方面,本发明还提供一种电子设备,包括:
处理器;以及
存储器,用于存储所述处理器的计算机程序;
其中,所述处理器被配置为通过执行所述计算机程序来实现第二方面中任意一种所述的数据同步方法。
第四方面,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第二方面中任意一种所述的数据同步方法。
本发明实施例提供的全球同服游戏系统、数据同步方法、电子设备及介质,通过同步数据模块将不同区域的服务器建立通信连接,并利用同步数据模块对各个服务器进行游戏数据的同步,使得各个服务器中所保存的游戏数据保持一致,进而使得不同区域服务器的玩家在需要访问获取跨区域数据时,直接可以从本地直接获取相应的游戏数据,从而在支持玩家跨区域进行数据访问的同时,大大提高了玩家数据访问的速率。
附图说明
图1为本发明根据一实施例示出的全球同服游戏系统结构示意图;
图2为本发明根据一实施例示出的游戏数据显示界面示意图;
图3为本发明根据另一实施例示出的全球同服游戏系统结构示意图;
图4为本发明根据再一实施例示出的全球同服游戏系统结构示意图;
图5为本发明根据另一实施例示出的游戏数据显示界面示意图;
图6为本发明根据一实施例示出的数据同步方法的流程示意图;
图7为本发明根据另一实施例示出的数据同步方法的流程示意图;
图8为本发明根据一实施例示出的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在现有的全球同服游戏构架中,一般是采用中央服务器实现,当玩家需要拉取其他服务器上玩家的数据时,必须通过该中央服务器去拉取玩家的信息。
可见,通过中央服务器的方式进行数据访问(例如,获取玩家的在线状态)的过程中,需要先获知玩家所在的区域。中央服务器首先需要获取每个玩家所在的区域,然后再向该区域的数据库发出请求,在获得数据响应之后再发送给请求指定玩家。例如,A玩家需要拉取B玩家、C玩家以及D玩家的信息,则需要同时先获取B玩家、C玩家、D玩家所在区域,然后在去对应的区域服务器中找到B玩家、C玩家以及D玩家对应的数据。这种通过中央服务器进行逐一拉取数据的方式非常的费时且繁琐。
此外,通过中央服务器的方式进行数据访问的方式,不支持玩家跨区域进行访问,即玩家如果因为旅游或者出差从第一区域(亚洲)迁移到第二区域(例如:美洲)以后,还需要访问原来第一区服务器(例如:亚洲区服务器)的逻辑处理单元,以保证服务逻辑的正确性。这样不能就近的访问服务器的方式,会造成较长的延迟,例如:美洲区服务器到亚洲服务器的延迟高到200ms,导致了大量访问资源的浪费,进而还会使得玩家的游戏体验非常差。
针对上述存在的各个问题,本发明实施例提供一种全球同服游戏系统,以使得各区服务器中的游戏数据保持一致,从而使得玩家在进行访问服务时,可以直接从对应的区域的本地服务器中直接获取相关游戏数据,从而减小延迟,提高访问速率。
图1为本发明根据一实施例示出的全球同服游戏系统结构示意图。如图1所示,本实施例提供的全球同服游戏系统,包括:第一区服务器11、第二区服务器12以及同步数据模块13。
其中,第一区服务器11与第二区服务器12通过同步数据模块13进行通信连接。值得理解的,同步数据模块13可以为设置在云端进行第一区服务器11和第二区服务器12之间数据同步的模块,即若第一区服务器11发生故障时,并不会通过同步数据模块13影响第二区服务器12,同理,若第二区服务器12发生故障时,同样也不会通过同步数据模块13影响第一区服务器11。
同步数据模块13用于对第一区服务器11和第二区服务器12中的游戏数据进行同步,以使第一区服务器11和第二区服务器12中的游戏数据保持一致。其中,第一区服务器11和第二区服务器12中的游戏数据可以是分批次进行同步。对于数据同步可以理解为,同步数据模块13可以将第一区服务器11中产生的第一游戏数据同步至第二区服务器12,并且将第二区服务器12中产生的第二游戏数据同步至第一区服务器11,然后,使第一区服务器11与第二区服务器12分别根据第一游戏数据以及第二游戏数据生成游戏数据,进而使得第一区服务器11和第二区服务器12中的游戏数据保持一致。可选的,为了防止数据冲突,在固定时间内还可以只容许单边的写入,即从第一区服务器11向第二区服务器12同步数据,或者是从第二区服务器12向第一区服务器11同步数据。
为了方便对上述全球同服游戏系统进行理解,下面可以通过结合游戏数据中的一个具体的例子进行说明:
图2为本发明根据一实施例示出的游戏数据显示界面示意图。其中,如图2所示,第一玩家、第二玩家以及第三玩家可以为第一区服务器11所对应的玩家,而第四玩家以及第五玩家可以为第二区服务器12所对应的玩家。
当前,若第一玩家与第四玩家需要邀请第一玩家至第五玩家中的某些玩家加入游戏,则需要展示玩家列表,此处玩家列表即为上述游戏数据中的一种可能形式。
如果按照现有技术中的中央服务器的方式进行数据访问的方式,在第一玩家侧,第一区服务器需要先向中央服务器发出获取玩家列表的请求,中央服务器相应于请求,需要先获取第四玩家以及第五玩家所在的第二区服务器,然后从第二区服务器中拉取第四玩家以及第五玩家的状态数据,最后再反馈至第一区服务器,以使第一玩家从第一区服务器中获取玩家列表。同理,在第四玩家侧第二区服务器需要先向中央服务器发出获取玩家列表的请求,中央服务器相应于请求,需要先获取第一玩家、第二玩家以及第三玩家所在的第一区服务器,然后从第一区服务器中拉取第一玩家、第二玩家以及第三玩家的状态数据,最后再反馈至第二区服务器,以使第四玩家从第二区服务器中获取玩家列表。显然,通过中央服务器进行逐一拉取数据的方式非常的费时且繁琐。
而通过本实施例提供的全球同服游戏系统,由于第一区服务器11与第二区服务器12事先通过同步数据模块13进行了游戏数据的同步,第一区服务器11和第二区服务器12中的游戏数据为保持一致的。那么,在第一玩家侧,第一玩家可以直接从本地的第一区服务器中获取所有玩家的状态数据,即玩家列表。同理,在第四玩家侧,第四玩家同样可以直接从本地的第二区服务器中获取所有玩家的状态数据,即玩家列表。显然,通过上述通过本实施例提供的全球同服游戏系统,不同区域服务器的玩家均可从本地直接获取游戏数据,访问速度快且简单。此外,玩家在位置跨区域之后,还可以就近登陆到当前所在区域的游戏服务器,就可以就近的拉取数据,而不需要为了保持原有服务器中的逻辑的一直而必须跨域区域访问原来的服务器来获取相应的服务。
可选的,当玩家在不同的区域之间做数据迁移时,比如玩家因为从亚洲旅游到美洲,需要从美洲区服务器登陆游戏,为了避免过大的网络延迟。可以在登录过程中,还可以对原来在亚洲区服务器中的数据处理模块进行相关迁移,以避免亚洲区服务器数据处理模块和美洲区服务器数据处理模块对同一数据进行读写。
在本实施例中,通过同步数据模块将不同区域的服务器建立通信连接,并利用同步数据模块对各个服务器进行游戏数据的同步,使得各个服务器中所保存的游戏数据保持一致,进而使得不同区域服务器的玩家在需要访问获取跨区域数据时,直接可以从本地直接获取相应的游戏数据,从而在支持玩家跨区域进行数据访问的同时,大大提高了玩家数据访问的速率。
此外,由于本实施例提供的全球同服游戏系统架构简单,可以进行分区域的部署,从而无需改变传统的游戏服务器的原有的结构,扩展性强,并且,在开发时可以保持原有的开发模式。
继续参照图1,在一种可能的情况中,当第一区服务11发生故障时,第一区服务器11对应的玩家设备还可以连接至第二区服务器12,此时,玩家设备可以是向第二区服务器12写入游戏数据,而当第一区服务器11排除故障,恢复服务后,第二区服务器12则还可以通过同步数据模块13将游戏数据同步至第一区服务器11中,以使得恢复服务后第一区服务器11能够重新获取到完整的游戏数据。
而在另一种可能的情况中,当第二区服务器12发生故障时,第二区服务器12对应的玩家设备同样可以连接至第一区服务器11,玩家设备向第一区服务器11写入游戏数据,而当第二区服务器12恢复服务时,第一区服务器11通过同步数据模块13将游戏数据同步至第二区服务器12中,以使得恢复服务后第二区服务器12能够重新获取到完整的游戏数据。可见,本实施例提供的全球同服游戏系统的容错和错误恢复能力强。在玩家发生数据异常,或者服务器发生错误后,可以通过组合操作,可以很快的恢复游戏数据。
在图2所述实施例的基础上,图3为本发明根据另一实施例示出的全球同服游戏系统结构示意图。如图3所示,第一区服务器11可以包括:第一存储代理模块111以及第一数据库1112,而第二区服务器12包括:第二存储代理模块121以及第二数据库122。其中,第一存储代理模块111与第二存储代理模块121通过同步数据模块13进行通信连接。具体的,第一存储代理模块111用于从第一数据库112读取游戏数据和/或向第一数据库112中写入游戏数据,而第二存储代理模块121用于从第二数据库122读取游戏数据和/或向第二数据库122中写入游戏数据,从而使得第一数据库112和第二数据库122中的游戏数据保持一致。第一存储代理模块111以及第二存储代理模块121,还可以是记录下游戏数据的变更记录,从而方便从错误中回滚数据。同时在数据同步的过程中,以改变更日志为基础,进行数据的记录。
在图2或者图3所示实施例的基础上,图4为本发明根据再一实施例示出的全球同服游戏系统结构示意图。如图4所示,第一区服务器11还可以包括第一数据协调模块113,第二区服务器12包括第二数据协调模块123。其中,第一数据协调模块113与第二数据协调模块123通过同步数据模块13进行通信连接。具体的,第一数据协调模块113用于为第一区服务器11中的第一写入数据分配第一编码,而第二数据协调模块123则用于为第二区服务器12中的第二写入数据分配第二编码,其中,第一编码区别与第二编码。然后,第一区服务器11以及第二区服务器12分别根据第一编码区别与第二编码确定第一写入数据和第二写入数据的存储顺序。
在一种可能的情况中,当第一数据协调模块113为第一区服务器11中的第一写入数据分配第一编码之后,第一数据协调模块113将第一编码通过同步数据模块13同步至第二数据协调模块123,以使第二数据协调模块123根据第一编码以及预设编码规则为第二区服务器12中的第二写入数据分配第二编码。可选的,此处,第二编码可以大于第一编码。并且,当第一区服务器11通过同步数据模块13将第一编码以及第一写入数据同步至第二区服务器12,第二区服务器12根据第一编码以及第二编码确定第一写入数据与第二写入数据在第二区服务器12中的存储顺序,以及当第二区服务器12通过同步数据模块13将第二编码以及第二写入数据同步至第一区服务器11,第一区服务器11根据第一编码以及第二编码确定第一写入数据与第二写入数据在第二区服务器12中的存储顺序。
而在另一种可能的情况中,当第二数据协调模块123为第二区服务器12中的第二写入数据分配第二编码之后,第二数据协调模块123将第二编码通过同步数据模块13同步至第一数据协调模块113,以使第一数据协调模块113根据第二编码以及预设编码规则为第一区服务器11中的第一写入数据分配第一编码。可选的,此处,第一编码可以大于第二编码。并且,当第一区服务器11通过同步数据模块13将第一编码以及第一写入数据同步至第二区服务器12,第二区服务器12根据第一编码以及第二编码确定第一写入数据与第二写入数据在第二区服务器12中的存储顺序,以及当第二区服务器12通过同步数据模块13将第二编码以及第二写入数据同步至第一区服务器11,第一区服务器11根据第一编码以及第二编码确定第一写入数据与第二写入数据在第二区服务器12中的存储顺序。
对于上述第一编码和第二编码的理解,可以是第一玩家和第二玩家在对相同的数据(例如:对于游戏公告的评论)进行读写时,为了确定具体谁先谁后,则可以通过各自所获取得到的编码进行确定。玩家写完相同的数据,附带上各自对应的数据协调模块下发的第一编码或者第二编码,就可以对相同数据的操作进行排序。而同步数据模块13则是可以使得第一数据协调模块113和第二数据协调模块123在产生代表顺序的编码时,能够相互同步当前各自所产生编码的具体信息,从而避免产生同样的编码,以保证编码生成的有序性和唯一性。
为了方便对上述全球同服游戏系统进行理解,下面可以通过结合游戏数据中的一个具体的例子进行说明:
其中,图5为本发明根据另一实施例示出的游戏数据显示界面示意图。如图5所示,第一玩家、第二玩家以及第三玩家可以为第一区服务器11所对应的玩家,而第四玩家以及第五玩家可以为第二区服务器12所对应的玩家。
当前,需要在为各个玩家显示游戏社区中的游戏公告以及对于游戏公告的评论信息。其中,此处游戏公告以及对于游戏公告的评论信息为上述游戏数据中的一种可能形式。
当第一数据协调模块113为第一区服务器11中的第三玩家写入的评论数据分配第一编码(例如:10000)之后,第一数据协调模块113将第一编码通过同步数据模块13同步至第二数据协调模块123。而第二数据协调模块123第二区服务器12中的第四玩家也写入了评论数据,由于此时,第二数据协调模块123已经同步得到了第一编码,那么就需要为第四玩家也写入了评论数据分配大于第一编码的第二编码(例如:10001)。而在对第三玩家写入的评论数据和第四玩家也写入的评论数据进行存储的时候,即可以把编号为10000的评论数据存储在编号为10001的评论数据之前,并且,在各个玩家显示游戏公告的评论信息时,也按照上述的存储数据进行显示。
图6为本发明根据一实施例示出的数据同步方法的流程示意图。如图6所示,本实例提供的数据同步方法,应用于上述任意实施例提供的全球同服游戏系统,具体方法包括:
步骤201、将第一区服务器中存储的第一游戏数据同步至第二区服务器。
步骤202、将第二区服务器中存储的第二游戏数据同步至第一区服务器。
步骤203、第一区服务器与第二区服务器分别根据第一游戏数据以及第二游戏数据生成游戏数据。
具体的,可以是通过同步数据模块13对第一区服务器11和第二区服务器12中的游戏数据进行同步,以使第一区服务器11和第二区服务器12中的游戏数据保持一致。其中,第一区服务器11和第二区服务器12中的游戏数据可以是分批次进行同步。同步数据模块13可以将第一区服务器11中产生的第一游戏数据同步至第二区服务器12,并且将第二区服务器12中产生的第二游戏数据同步至第一区服务器11,然后,使第一区服务器11与第二区服务器12分别根据第一游戏数据以及第二游戏数据生成游戏数据,进而使得第一区服务器11和第二区服务器12中的游戏数据保持一致。可选的,为了防止数据冲突,在固定时间内还可以只容许单边的写入,即从第一区服务器11向第二区服务器12同步数据,或者是从第二区服务器12向第一区服务器11同步数据。
在本实施例中,通过同步数据模块将不同区域的服务器建立通信连接,并利用同步数据模块对各个服务器进行游戏数据的同步,使得各个服务器中所保存的游戏数据保持一致,进而使得不同区域服务器的玩家在需要访问获取跨区域数据时,直接可以从本地直接获取相应的游戏数据,从而在支持玩家跨区域进行数据访问的同时,大大提高了玩家数据访问的速率。
在图6所示实施例的基础上,图7为本发明根据另一实施例示出的数据同步方法的流程示意图。如图7所示,本实施例提供的数据同步方法,应用于上述任意实施例提供的全球同服游戏系统,具体方法包括:
步骤301、将第一区服务器中存储的第一游戏数据同步至第二区服务器。
步骤302、将第二区服务器中存储的第二游戏数据同步至第一区服务器。
步骤303、第一区服务器与第二区服务器分别根据第一游戏数据以及第二游戏数据生成游戏数据。
值得说明的,本实施例子中步骤301-步骤303的具体描述请参照图6所示实施例中步骤201-步骤203中的描述,此处不再进行赘述。
步骤304、将第一数据协调模块为第一区服务器中的第一写入数据分配第一编码同步至第二区服务器。
步骤305、将第二数据协调模块为第二区服务器中的第二写入数据分配第二编码同步至第一区服务器。
步骤306、第一区服务器与第二区服务器分别根据第一编码以及第二编码确定第一写入数据与第二写入数据的存储顺序。
具体的,在一种可能的情况中,当第一数据协调模块113为第一区服务器11中的第一写入数据分配第一编码之后,第一数据协调模块113将第一编码通过同步数据模块13同步至第二数据协调模块123,以使第二数据协调模块123根据第一编码以及预设编码规则为第二区服务器12中的第二写入数据分配第二编码。可选的,此处,第二编码可以大于第一编码。并且,当第一区服务器11通过同步数据模块13将第一编码以及第一写入数据同步至第二区服务器12,第二区服务器12根据第一编码以及第二编码确定第一写入数据与第二写入数据在第二区服务器12中的存储顺序,以及当第二区服务器12通过同步数据模块13将第二编码以及第二写入数据同步至第一区服务器11,第一区服务器11根据第一编码以及第二编码确定第一写入数据与第二写入数据在第二区服务器12中的存储顺序。
而在另一种可能的情况中,当第二数据协调模块123为第二区服务器12中的第二写入数据分配第二编码之后,第二数据协调模块123将第二编码通过同步数据模块13同步至第一数据协调模块113,以使第一数据协调模块113根据第二编码以及预设编码规则为第一区服务器11中的第一写入数据分配第一编码。可选的,此处,第一编码可以大于第二编码。并且,当第一区服务器11通过同步数据模块13将第一编码以及第一写入数据同步至第二区服务器12,第二区服务器12根据第一编码以及第二编码确定第一写入数据与第二写入数据在第二区服务器12中的存储顺序,以及当第二区服务器12通过同步数据模块13将第二编码以及第二写入数据同步至第一区服务器11,第一区服务器11根据第一编码以及第二编码确定第一写入数据与第二写入数据在第二区服务器12中的存储顺序。
对于上述第一编码和第二编码的理解,可以是第一玩家和第二玩家在对相同的数据(例如:对于游戏公告的评论)进行读写时,为了确定具体谁先谁后,则可以通过各自所获取得到的编码进行确定。玩家写完相同的数据,附带上各自对应的数据协调模块下发的第一编码或者第二编码,就可以对相同数据的操作进行排序。而同步数据模块13则是可以使得第一数据协调模块113和第二数据协调模块123在产生代表顺序的编码时,能够相互同步当前各自所产生编码的具体信息,从而避免产生同样的编码,以保证编码生成的有序性和唯一性。
图8为本发明根据一实施例示出的电子设备的结构示意图。如图8所示,本实施例提供的电子设备400,包括:
处理器401;以及,
存储器402,用于存储所述处理器的可执行指令,该存储器还可以是flash(闪存);
其中,所述处理器401配置为经由执行所述可执行指令来执行上述方法中的各个步骤。具体可以参见前面方法实施例中的相关描述。
可选地,存储器402既可以是独立的,也可以跟处理器401集成在一起。
当所述存储器402是独立于处理器401之外的器件时,所述电子设备40,还可以包括:
总线404,用于连接所述处理器401以及所述存储器402。
本实施例还提供一种可读存储介质,可读存储介质中存储有计算机程序,当电子设备的至少一个处理器执行该计算机程序时,电子设备执行上述的各种实施方式提供的方法。
本实施例还提供一种程序产品,该程序产品包括计算机程序,该计算机程序存储在可读存储介质中。电子设备的至少一个处理器可以从可读存储介质读取该计算机程序,至少一个处理器执行该计算机程序使得电子设备实施上述的各种实施方式提供的方法。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或对其中部分或全部技术特征进行等同替换;而这些修改或替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种全球同服游戏系统,其特征在于,包括:第一区服务器、第二区服务器以及同步数据模块;
所述第一区服务器与所述第二区服务器通过所述同步数据模块进行通信连接;
所述同步数据模块用于对所述第一区服务器和所述第二区服务器中的游戏数据进行同步,以使所述第一区服务器和所述第二区服务器中的所述游戏数据保持一致。
2.根据权利要求1所述的全球同服游戏系统,其特征在于,所述第一区服务器包括第一数据协调模块,所述第二区服务器包括第二数据协调模块;
所述第一数据协调模块与所述第二数据协调模块通过所述同步数据模块进行通信连接;
所述第一数据协调模块用于为所述第一区服务器中的第一写入数据分配第一编码;
所述第二数据协调模块用于为所述第二区服务器中的第二写入数据分配第二编码;
其中,所述第一编码区别与所述第二编码。
3.根据权利要求2所述的全球同服游戏系统,其特征在于,当所述第一数据协调模块为所述第一区服务器中的所述第一写入数据分配所述第一编码之后,所述第一数据协调模块将所述第一编码通过所述同步数据模块同步至所述第二数据协调模块,以使所述第二数据协调模块根据所述第一编码以及预设编码规则为所述第二区服务器中的所述第二写入数据分配所述第二编码;或者,
当所述第二数据协调模块为所述第二区服务器中的所述第二写入数据分配所述第二编码之后,所述第二数据协调模块将所述第二编码通过所述同步数据模块同步至所述第一数据协调模块,以使所述第一数据协调模块根据所述第二编码以及预设编码规则为所述第一区服务器中的所述第一写入数据分配所述第一编码。
4.根据权利要求2或3所述的全球同服游戏系统,其特征在于,当所述第一区服务器通过所述同步数据模块将所述第一编码以及所述第一写入数据同步至所述第二区服务器,所述第二区服务器根据所述第一编码以及所述第二编码确定所述第一写入数据与所述第二写入数据在所述第二区服务器中的存储顺序;
当所述第二区服务器通过所述同步数据模块将所述第二编码以及所述第二写入数据同步至所述第一区服务器,所述第一区服务器根据所述第一编码以及所述第二编码确定所述第一写入数据与所述第二写入数据在所述第二区服务器中的存储顺序。
5.根据权利要求4所述的全球同服游戏系统,其特征在于,所述第一区服务器包括:第一存储代理模块以及第一数据库,所述第二区服务器包括:第二存储代理模块以及第二数据库;
所述第一存储代理模块与所述第二存储代理模块通过所述同步数据模块进行通信连接;
所述第一存储代理模块用于从所述第一数据库读取所述游戏数据和/或向所述第一数据库中写入所述游戏数据;
所述第二存储代理模块用于从所述第二数据库读取所述游戏数据和/或向所述第二数据库中写入所述游戏数据;
以使所述第一数据库和所述第二数据库中的所述游戏数据保持一致。
6.根据权利要求1-3中任意一项所述的全球同服游戏系统,其特征在于,当所述第一区服务器发生故障时,所述第一区服务器对应的玩家设备连接至所述第二区服务器,所述玩家设备向所述第二区服务器写入所述游戏数据;
当所述第一区服务器恢复服务时,所述第二区服务器通过所述同步数据模块将所述游戏数据同步至所述第一区服务器;或者,
当所述第二区服务器发生故障时,所述第二区服务器对应的玩家设备连接至所述第一区服务器,所述玩家设备向所述第一区服务器写入所述游戏数据;
当所述第二区服务器恢复服务时,所述第一区服务器通过所述同步数据模块将所述游戏数据同步至所述第二区服务器。
7.一种数据同步方法,其特征在于,应用于权利要求1-6中任意一项所述的全球同服游戏系统,所述方法,包括:
将所述第一区服务器中存储的第一游戏数据同步至所述第二区服务器;
将所述第二区服务器中存储的第二游戏数据同步至所述第一区服务器;
以使所述第一区服务器与所述第二区服务器分别根据所述第一游戏数据以及所述第二游戏数据生成所述游戏数据,以使所述第一区服务器和所述第二区服务器中的所述游戏数据保持一致。
8.根据权利要求7所述的数据同步方法,其特征在于,所述第一区服务器包括第一数据协调模块,所述第二区服务器包括第二数据协调模块;所述方法,还包括:
将所述第一数据协调模块为所述第一区服务器中的第一写入数据分配第一编码同步至所述第二区服务器;
将所述第二数据协调模块为所述第二区服务器中的第二写入数据分配第二编码同步至所述第一区服务器;
以使所述第一区服务器与所述第二区服务器分别根据所述第一编码以及所述第二编码确定所述第一写入数据与所述第二写入数据的存储顺序。
9.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的计算机程序;
其中,所述处理器被配置为通过执行所述计算机程序来实现权利要求7或8所述的数据同步方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求7或8所述的数据同步方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910716479.1A CN110354491B (zh) | 2019-08-05 | 2019-08-05 | 全球同服游戏系统、数据同步方法、电子设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910716479.1A CN110354491B (zh) | 2019-08-05 | 2019-08-05 | 全球同服游戏系统、数据同步方法、电子设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110354491A true CN110354491A (zh) | 2019-10-22 |
CN110354491B CN110354491B (zh) | 2023-08-08 |
Family
ID=68223151
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910716479.1A Active CN110354491B (zh) | 2019-08-05 | 2019-08-05 | 全球同服游戏系统、数据同步方法、电子设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110354491B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110879803A (zh) * | 2019-10-29 | 2020-03-13 | 杭州涂鸦信息技术有限公司 | 一种用户数据的迁移方法及系统 |
CN112402979A (zh) * | 2020-12-02 | 2021-02-26 | 网易(杭州)网络有限公司 | 游戏数据处理方法、装置和电子设备 |
CN113908532A (zh) * | 2021-10-15 | 2022-01-11 | 腾讯科技(深圳)有限公司 | 数据处理方法和装置、存储介质及电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100317443A1 (en) * | 2009-06-11 | 2010-12-16 | Comcast Cable Communications, Llc | Distributed Network Game System |
CN104090874A (zh) * | 2013-04-01 | 2014-10-08 | 北京畅游天下网络技术有限公司 | 一种跨平台数据管理方法和系统 |
CN105516147A (zh) * | 2015-12-11 | 2016-04-20 | 杭州萨满网络科技有限公司 | 全球同服战斗的游戏系统 |
CN105897744A (zh) * | 2016-05-26 | 2016-08-24 | 广州多益网络股份有限公司 | 一种游戏服务器更新方法及其系统 |
CN106375314A (zh) * | 2016-08-31 | 2017-02-01 | 腾讯科技(深圳)有限公司 | 一种游戏同步方法、游戏客户端及游戏服务器 |
CN109033391A (zh) * | 2018-07-31 | 2018-12-18 | 北京嘀嘀无限科技发展有限公司 | 一种多数据中心之间数据同步方法、系统及计算机可读存储介质 |
-
2019
- 2019-08-05 CN CN201910716479.1A patent/CN110354491B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100317443A1 (en) * | 2009-06-11 | 2010-12-16 | Comcast Cable Communications, Llc | Distributed Network Game System |
CN104090874A (zh) * | 2013-04-01 | 2014-10-08 | 北京畅游天下网络技术有限公司 | 一种跨平台数据管理方法和系统 |
CN105516147A (zh) * | 2015-12-11 | 2016-04-20 | 杭州萨满网络科技有限公司 | 全球同服战斗的游戏系统 |
CN105897744A (zh) * | 2016-05-26 | 2016-08-24 | 广州多益网络股份有限公司 | 一种游戏服务器更新方法及其系统 |
CN106375314A (zh) * | 2016-08-31 | 2017-02-01 | 腾讯科技(深圳)有限公司 | 一种游戏同步方法、游戏客户端及游戏服务器 |
CN109033391A (zh) * | 2018-07-31 | 2018-12-18 | 北京嘀嘀无限科技发展有限公司 | 一种多数据中心之间数据同步方法、系统及计算机可读存储介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110879803A (zh) * | 2019-10-29 | 2020-03-13 | 杭州涂鸦信息技术有限公司 | 一种用户数据的迁移方法及系统 |
CN112402979A (zh) * | 2020-12-02 | 2021-02-26 | 网易(杭州)网络有限公司 | 游戏数据处理方法、装置和电子设备 |
CN112402979B (zh) * | 2020-12-02 | 2023-11-17 | 网易(杭州)网络有限公司 | 游戏数据处理方法、装置和电子设备 |
CN113908532A (zh) * | 2021-10-15 | 2022-01-11 | 腾讯科技(深圳)有限公司 | 数据处理方法和装置、存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110354491B (zh) | 2023-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110354491A (zh) | 全球同服游戏系统、数据同步方法、电子设备及介质 | |
CN107665141B (zh) | 一种数据库配置方法及其设备 | |
CN110502310B (zh) | 一种虚拟机的时间同步方法及装置 | |
CN107666493B (zh) | 一种数据库配置方法及其设备 | |
WO2018045758A1 (zh) | 一种数据存储方法及数据中心 | |
CN106909595B (zh) | 一种数据迁移方法及装置 | |
US9736155B2 (en) | System, method, and apparatus for authentication | |
CN111544895B (zh) | 排行榜处理方法及装置、电子设备、存储介质 | |
CN106802892A (zh) | 用于主备数据一致性校验的方法和设备 | |
CN109656646B (zh) | 一种远程桌面控制方法、装置、设备及虚拟化芯片 | |
US10078678B2 (en) | Data transfer between multiple databases | |
CN110443690A (zh) | 一种差异数据对账的方法、装置、服务器和存储介质 | |
CN107704604A (zh) | 一种消息持久化方法、服务器和计算机可读存储介质 | |
CN111259066A (zh) | 服务器集群数据同步方法及装置 | |
CN111625552A (zh) | 数据收集方法、装置、设备和可读存储介质 | |
CN107040576A (zh) | 信息推送方法及装置、通讯系统 | |
US9335987B2 (en) | Data object with common statement series | |
CN113194270A (zh) | 视频处理方法、装置、电子设备及存储介质 | |
CN112988880B (zh) | 数据同步方法、装置、电子设备及计算机存储介质 | |
CN111026371B (zh) | 一种游戏开发方法、装置、电子设备及存储介质 | |
CN109063135B (zh) | 一种基于多活分布式架构的数据库复制方法及系统 | |
CN112138372B (zh) | 分布式系统中的数据同步方法及相关设备 | |
CN109389271B (zh) | 应用性能管理方法及系统 | |
US11775398B2 (en) | Rollback of services with a global variable change | |
CN109275009A (zh) | 一种控制音频与文本同步的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |