CN111054067B - 游戏存档文件存储方法、电子设备和存储介质 - Google Patents
游戏存档文件存储方法、电子设备和存储介质 Download PDFInfo
- Publication number
- CN111054067B CN111054067B CN201911036505.2A CN201911036505A CN111054067B CN 111054067 B CN111054067 B CN 111054067B CN 201911036505 A CN201911036505 A CN 201911036505A CN 111054067 B CN111054067 B CN 111054067B
- Authority
- CN
- China
- Prior art keywords
- archive
- fragment
- user
- game
- server
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 239000012634 fragment Substances 0.000 claims abstract description 296
- 238000004590 computer program Methods 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 abstract description 22
- 230000004044 response Effects 0.000 abstract description 12
- 230000008569 process Effects 0.000 description 15
- 230000008859 change Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000010295 mobile communication 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
- 238000004064 recycling Methods 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/45—Controlling the progress of the video game
- A63F13/49—Saving the game status; Pausing or ending the game
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- 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
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/55—Details of game data or player data management
- A63F2300/5526—Game data structure
- A63F2300/554—Game data structure by saving game or status data
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例涉及云游戏技术领域,公开了一种游戏存档文件存储方法、电子设备和存储介质。在云游戏服务器端,该方法包括:在用户的本次游戏结束时,将本次游戏的存档文件分片得到第一存档分片;将用户的本次游戏开始前的第二存档分片与第一存档分片对比得到本次游戏的待上传分片,将待上传分片发送至存档服务器。在存档服务器端,该方法包括:响应于云游戏服务器的分片上传请求,将请求上传的存档分片中本地未存储的用户存档分片存储至存档服务器;并根据请求上传的分片信息更新用户的存档分片信息。本发明实施方式可大幅节约存档文件传输以及存储资源,提高用户打开游戏的响应速度。
Description
技术领域
本发明涉及云游戏技术领域,特别涉及一种游戏存档文件存储方法、电子设备和存储介质。
背景技术
云游戏以云计算为基础,所有游戏都在服务器端运行,并将渲染完毕后的游戏画面压缩后通过网络传送给用户。云游戏服务器一般会分时复用,因此云游戏平台中每个玩家的存档文件都需要存储到用户存档服务器上。现有存档服务器采用目录管理系统或者分布式文件系统将存档文件写入磁盘。当用户A玩游戏a的时候,云游戏平台会去存档服务器上获取存档文件,文件路径是./A/a/;此时用户A就可以获取上次玩游戏a的进度。
发明人发现相关技术至少存在以下问题:随着云游戏平台规模的不断扩大、上云的游戏数量急剧增加以及用户数和游戏规模数的日益增加,用户存档文件呈指数级别增加,现有存档文件存储方式会造成用户读取存档延迟增加、读取存档成功率下降,严重影响用户的游戏体验。
发明内容
本发明实施方式的目的在于提供一种游戏存档文件存储方法、电子设备和存储介质,可大幅节约存档文件传输以及存储资源,提高用户打开游戏的响应速度。
为解决上述技术问题,本发明的实施方式提供了一种游戏存档文件存储方法,应用于云游戏服务器,包括:
在用户的本次游戏结束时,将所述本次游戏的存档文件分片得到第一存档分片;
将所述用户的本次游戏开始前的第二存档分片与所述第一存档分片对比得到所述本次游戏的待上传分片,将所述待上传分片发送至存档服务器。
本发明的实施方式还提供了一种游戏存档文件存储方法,应用于存档服务器,包括:
响应于云游戏服务器的分片上传请求,将请求上传的存档分片中本地未存储的用户存档分片存储至所述存档服务器;
并根据请求上传的分片信息更新用户的存档分片信息。
本发明的实施方式还提供了一种电子设备,包括:存储器和处理器,存储器存储计算机程序,处理器运行所述计算机程序以实现如前所述的游戏存档文件存储方法。
本发明的实施方式还提供了一种计算机可读存储介质,用于存储计算机可读程序,所述计算机可读程序用于供计算机执行如前所述的游戏存档文件存储方法。
本发明实施方式相对于现有技术而言,在用户的本次游戏结束时,将本次游戏的存档文件分片得到第一存档分片,将该用户的本次游戏开始前的第二存档分片与第一存档分片对比得到本次游戏的待上传分片,将待上传分片发送至存档服务器,存档服务器响应于云游戏服务器的分片上传请求,将请求上传的存档分片中本地未存储的用户存档分片存储至存档服务器,并根据请求上传的分片信息更新用户的存档分片信息。本实施方式在上传存档文件时,通过对存档文件进行分片,并比对本次游戏前后的存档文件的差异得到需要上传的分片,从而可大幅减少存档文件传输数据量,节约传输网络资源,提高用户打开游戏时的响应速度;同时,由于存档服务器仅存储本地未存储的存档分片,实现了所有用户共享存档分片,因此,可大幅节约存储资源。
作为一个实施例,所述方法还包括:
在所述用户的下次游戏开始时,获取所述存档服务器存储的所述用户的存档分片信息;
将本地的存档分片信息与所述用户的存档分片信息对比得到待下载分片;
从所述存档服务器下载所述待下载分片,将下载的分片与所述本地的存档分片拼接得到所述用户的存档文件。从而可节约下载时的传输资源。
作为一个实施例,在所述将所述本次游戏的存档文件分片得到第一存档分片之后,还包括:生成所述第一存档分片的第一分片数据;
所述将所述用户的本次游戏开始前的第二存档分片与所述第一存档分片对比得到所述本次游戏的待上传分片,具体包括:
获取所述第二存档分片的第二分片数据;其中,所述第一分片数据以及所述第二分片数据包括分片数量、总存档文件信息以及各个分片的分片信息;其中,所述总存档文件信息以及所述分片信息用于表征文件内容的唯一性;
根据所述总存档文件信息确定所述第一分片数据与所述第二分片数据的总存档文件是否一致,若不一致,则逐个对比所述第一分片数据与所述第二分片数据的各个分片的分片信息,以得到所述待上传分片。从而可快速比对出待上传的分片。
作为一个实施例,所述将所述待上传分片发送至存档服务器,具体包括:
将所述待上传分片的分片信息发送至所述存档服务器;
若接收到所述存档服务器反馈的分片上传信息,则根据所述分片上传信息上传所述待上传分片;其中,所述分片上传信息为所述存档服务器上未存储的分片的信息。从而可进一步节约传输资源。
作为一个实施例,所述方法还包括:
在接收到请求时将所述用户的存档分片信息下发至所述云游戏服务器,供所述云游戏服务器根据所述用户的存档分片信息确定待下发的存档分片;
响应于所述云游戏服务器的请求下发所述待下发的存档分片,供所述云游戏服务器将所述下发的存档分片与本地存档分片拼接成所述用户的存档文件。
作为一个实施例,还包括:
根据请求上传的分片信息更新所述用户的分片引用计数表;所述分片引用计数表用于记录存储的所有用户存档分片中各个分片的用户引用次数;
若分片的用户引用次数满足预设条件,则删除所述分片。从而可以及时回收无效的存档分片,进一步节约存档资源。
作为一个实施例,还包括:
根据请求上传的分片信息更新预设的服务器分片状态表,所述服务器分片状态表用于记录每次游戏结束时各服务器上的分片更新数量;
在接收到用户的开始游戏请求时,根据所述服务器分片状态表将分片更新数量最小的服务器分配至所述用户。从而有利于减小需下载的分片数量,进一步提高打开游戏响应速度。
附图说明
图1是根据本发明第一实施方式游戏存档文件存储方法的流程图;
图2是根据本发明第二实施方式游戏存档文件存储方法的流程图;
图3是根据本发明第三实施方式游戏存档文件存储装置的结构示意图;
图4是根据本发明第四实施方式游戏存档文件存储装置的结构示意图;
图5是根据本发明第五实施方式电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本发明而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本发明所要求保护的技术方案。
本发明的第一实施方式涉及一种游戏存档文件存储方法,应用于云游戏服务器侧。该方法包括:在用户的本次游戏结束时,将本次游戏的存档文件分片得到第一存档分片;将用户的本次游戏开始前的第二存档分片与第一存档分片对比得到本次游戏的待上传分片,将待上传分片发送至存档服务器。本实施方式在上传存档文件时,通过对存档文件进行分片,并对比游戏开始前以及游戏结束后的存档文件以得到需要上传的分片,因此,仅需传输部分存档文件,从而可大幅减少存档文件传输数据量,节约传输网络资源,提高用户打开游戏时的响应速度。
下面结合图1对本实施方式的游戏存档文件存储方法进行详细说明。该方法包括步骤101至步骤107。
步骤101:在用户的本次游戏结束时,将本次游戏的存档文件分片得到第一存档分片。
具体地,可以在本次游戏结束时,获取需要上传的存档文件列表,并遍历列表中的存档文件,将每一个文件分片,第一存档分片即为列表中的所有文件的分片的集合。
步骤102:将用户的本次游戏开始前的第二存档分片与第一存档分片对比得到本次游戏的待上传分片。
第二存档分片是用户的本次游戏开始前,也即上次游戏结束后的存档文件的分片,第二存档分片可以通过将前一用户游戏结束后的本地的存档分片与从存档服务器下载的当前用户的部分存档分片合并得到(同下文存档文件下载过程)。
在一些例子中,可以生成第一存档分片对应的第一分片数据以及第二存档分片对应的第二分片数据。第一分片数据以及第二分片数据均包括分片数量、总存档文件信息以及各个分片的分片信息。其中,总存档文件信息以及各个分片的分片信息用于表征文件内容的唯一性,唯一性是指所有用户的存档文件在存档服务器的存储系统中的唯一性。总存档文件信息以及各分片文件的分片信息可以采用文件的md5值,然不限于此,还可采用其他对计算量要求更小的形式的数值表示。
假设第一存档分片为一个存档文件的分片,可以先获取该存档文件的路径,路径是指相对游戏根目录的相对路径,生成一串数据S{路径|n|M|M1:M2:M3:Mn},其中n表示该存档文件的分片的数量,存档文件比如按照1kb(千位)大小进行文件切分,n=(存档文件大小/1kb)+1,M表示该存档文件的总存档文件信息,Mn表示对应的分片文件的分片信息。类似地,可以生成第二存档分片的第二分片数据。通过对比第二存档分片的第二分片数据以及第一存档分片的第一分片数据可以得到待上传分片(即用户的本次游戏结束后更新的存档文件所在的分片),步骤102中,可以根据总存档文件信息确定第一分片数据与第二分片数据的总存档文件是否一致,若不一致,则逐个对比第一分片数据与第二分片数据的各个分片的分片信息,以得到待上传分片。其中,第一分片数据中的M与第二分片数据中的M相同时,表示本次游戏结束时用户的存档文件无变化,因此无需上传用户的存档文件。若第一分片数据中的M与第二分片数据中的M不同,则表示存档文件有更新,此时,需要逐一比较第一分片数据与第二分片数据中的各个分片的分片信息,以得到第一存档分片与第二存档分片中的不同的分片作为待上传的分片。
步骤103:将待上传分片发送至存档服务器。
步骤101至步骤103描述了存档文件上传过程中云游戏服务器侧执行的相关步骤。下面继续描述存档文件下载过程中云游戏服务器侧执行的相关步骤。
步骤104:在用户的下次游戏开始时,获取存档服务器存储的用户的存档分片信息。其中,存档分片信息表示每个用户与其存档文件的分片的对应关系。
步骤105:将本地的存档分片信息与用户的存档分片信息对比得到待下载分片。
具体地,当前用户的存档分片信息为L1,前一用户的存档分片信息为L2,存档分片信息可以采用上述分片数据的形式表示,可以理解的是,用户的存档分片信息L可以包括多个数据串S,每个S对应一个文件,即用户的存档文件可以包括多个文件。L可以采用列表形式,L中每一行对应一个数据串S。步骤105中,L1和L2的比较方式如下:分别取出L1和L2中的第i行,记为Ai和Bi,并且以|线分割,比较分割后的第三个元素M,M一致表示该文件完全一致,不需要下载,如果M不一致,则继续逐个比较Mn得到不同的分片,直到L中的所有行比较结束得到全部需要下载的分片。
步骤106:从存档服务器下载待下载分片。
步骤107:将下载的分片与本地的存档分片拼接得到用户的存档文件。
在一些例子中,步骤103将待上传分片发送至存档服务器,具体可以包括:将待上传分片的分片信息发送至存档服务器,若接收到存档服务器反馈的分片上传信息,则根据分片上传信息上传待上传分片。其中,分片上传信息为存档服务器上未存储的分片的信息。即云游戏服务器先与存档服务器确认待上传的分片中哪些尚未存储在存档服务器中,再将未存储在存档服务器中的分片上传至存档服务器,而已经存储在存档服务器中的分片则无需上传。然不限于此,也可以将待上传分片直接上传至存档服务器。
本实施方式与现有技术相比,通过将存档文件分片,并且在上传存档文件过程中仅上传存档文件变化部分对应的分片,且在存档文件下载过程中,仅下载本地缺少的分片部分,从而可以大大减少存档文件传输数据量,节约文件传输带宽资源,提高用户打开游戏时的响应速度。
本发明的第二实施方式涉及一种游戏存档文件存储方法,应用于存档服务器。该方法包括:响应于云游戏服务器的分片上传请求,将请求上传的存档分片中本地未存储的用户存档分片存储至存档服务器;并根据请求上传的分片信息更新用户的存档分片信息。本实施方式中存档服务器仅存储所有用户的存档文件中的不同分片,从而大大降低了存档文件的冗余度,进而可大幅节约磁盘资源。
如图2所示,本实施方式的游戏存档文件存储方法包括步骤201至步骤204。
步骤201:响应于云游戏服务器的分片上传请求,将请求上传的存档分片中本地未存储的用户存档分片存储至存档服务器。
步骤202:根据请求上传的分片信息更新用户的存档分片信息。
其中,步骤201、步骤202是存档文件上传过程存档服务器执行的相关步骤。
存档服务器可以将上传的分片存储至游戏对应的目录下。步骤201中,当确定存档服务器中已经存储有请求上传或者上传的分片时,则无需将该分片写入存档服务器,当确定该分片为新的分片,即存档服务器尚未存储该分片时,将该分片写入存档服务器的磁盘等的存储介质。因此,存档服务器存储的存档分片均是不同的分片,从而大大降低了存储的存档文件的冗余度,进而可大幅节约存储资源。
存档服务器还存储有各个用户的最新的存档分片信息(即用户分片对应关系)。用户分片对应关系的结构如下{用户id:游戏id:S},其中S的数据结构同上。
步骤203:在接收到请求时将用户的存档分片信息下发至云游戏服务器,供云游戏服务器根据用户的存档分片信息确定待下发的存档分片。
即下发用户的最新的存档分片信息。
步骤204:响应于云游戏服务器的请求下发待下发的存档分片,供云游戏服务器将下发的存档分片与本地存档分片拼接成用户的存档文件。
通过下发云游戏服务器本地与用户的最新的存档分片之间的差异分片,即可获取用户最新的游戏进度。
步骤203、步骤204是存档文件下载过程存档服务器执行的相关步骤。
在一些例子中,还可以根据请求上传的分片信息更新用户的分片引用计数表,分片引用计数表用于记录存储的所有用户存档分片中各个分片的用户引用次数,若分片的用户引用次数满足预设条件,则删除分片。分片引用计数表中的每个分片的引用计数表示其存档文件包含该分片的用户数量。分片引用计数表的更新方式如下:比如,当用户的某个分片a被替换成分片a1时,此时将该分片a的引用计数减1,当某个分片的用户引用次数为0时,表示所有用户的存档文件都不包含该分片,此时删除该分片。并将分片a1的引用计数加1。通过及时回收用户不会使用的分片可以进一步提高存储资源的利用率。
值得一提的是,本发明实施方式还可以根据请求上传的分片信息更新预设的服务器分片状态表,服务器分片状态表用于记录每次游戏结束时各服务器上的分片更新数量,在接收到用户的开始游戏请求时,根据服务器分片状态表将分片更新数量最小的服务器分配至用户。服务器分片状态表可以是一个列表,其行数据可以展示(服务器ID:游戏ID:更新分片数n)。其中更新分片数n表示该服务器上,上一个用户玩此游戏后更新的分片的总数量。在大数据量的情况下,更新分片数最小的服务器,表示该服务器上的该游戏存档与大部分用户的存档比较接近。因此,通过为用户分配更新分片数最小的服务器可以降低用户下载存档分片的数量,进一步提高传输资源利用率。
下面通过举例说明本发明实施方式的游戏存档文件存档方法。
比如,用户U1玩了游戏A,假设游戏A只有一个存档文件f,游戏结束时f的大小为5kb,此时存档服务器上无游戏A的任何存档文件,因此将文件f切分成5个分片后上传至存档服务器。存档服务器上增加一条用户U1的存档分片信息-即用户分片对应关系。
当新来的用户U2玩了游戏A之后,如U2与U1的存档文件只有最后一个分片不同,此时上传U2的最后一个分片(记为5.1)到存档服务器,此时,存档服务器增加一条用户U2的用户分片对应关系。
当新来的用户U3玩了游戏A之后,如U3与U2的存档文件也只有最后一个分片不同,此时上传U3的最后一个分片(记为5.2)到存档服务器,存档服务器上增加一条用户U3的用户分片对应关系。这里用户U1、U2、U3分时复用同一云游戏服务器。
当用户U1再次玩了游戏A之后,首先从存档服务器获取用户U1的用户分片对应关系1,和本地存档文件比较即可发现只有分片5不同,此时只需下载分片5,替换本地的分片5.2并拼接后即可恢复到U1上一次的游戏存档状态。
当U1结束当前游戏之后,如果此时的存档和U2的存档完全一致,则只需上传分片5,并且更新U1的用户分片对应关系。此时用户U1和用户U2的用户分片对应关系一致,U1的分片5不需要存储到存档服务器,只需要更新分片的引用计数表即可。
本实施方式与现有技术相比,通过将存档文件分片,并且在上传存档文件过程中仅上传存档文件变化部分对应的分片,且在存档文件下载过程中,仅下载本地缺少的分片部分,从而可以大大减少存档文件传输数据量,节约文件传输带宽资源,提高用户打开游戏时的响应速度。并且,本发明实施方式仅存储所有用户的存档文件的不同的分片,大大降低了文件冗余度,从而可大幅节约存储资源。另外,还通过分配分片更新数量最小的服务器给用户使用,进一步降低用户获取存档分片的数量,提升传输带宽利用率。
本发明的第三实施方式涉及一种游戏存档文件存储装置。请参阅图3,本实施方式的游戏存档文件存储装置300包括:
分片模块301,用于在用户的本次游戏结束时,将本次游戏的存档文件分片得到第一存档分片;
上传分片对比模块302,用于将用户的本次游戏开始前的第二存档分片与第一存档分片对比得到本次游戏的待上传分片;
上传模块303,用于将待上传分片发送至存档服务器。
可选地,该游戏存档文件存储装置300还可以包括:
获取模块304,用于在用户的下次游戏开始时,获取存档服务器存储的用户的存档分片信息;
下载分片对比模块305,用于将本地的存档分片信息与用户的存档分片信息对比得到待下载分片;
下载模块306,用于从存档服务器下载待下载分片;以及
拼接模块307,用于将下载的分片与本地的存档分片拼接得到用户的存档文件。
可选地,该装置300还包括:
生成模块,生成第一存档分片的第一分片数据;
上传分片对比模块302包括:
获取子单元,用于获取第二存档分片的第二分片数据;其中,第一分片数据以及第二分片数据包括分片数量、总存档文件信息以及各个分片的分片信息;其中,总存档文件信息以及分片信息用于表征文件内容的唯一性;
确定子单元,用于根据总存档文件信息确定第一分片数据与第二分片数据的总存档文件是否一致,若不一致,则逐个对比第一分片数据与第二分片数据的各个分片的分片信息,以得到待上传分片。
进一步地,上传模块303可以包括:
分片信息发送子单元,用于将待上传分片的分片信息发送至存档服务器;
分片上传子单元,用于在接收到存档服务器反馈的分片上传信息时,根据分片上传信息上传待上传分片;其中,分片上传信息为存档服务器上未存储的分片的信息。
本实施方式与现有技术相比,游戏存档文件存储装置通过将存档文件分片,并且在上传存档文件过程中仅上传存档文件变化部分对应的分片,且在存档文件下载过程中,仅下载本地缺少的分片部分,从而可以大大减少存档文件传输数据量,节约文件传输带宽资源,提高用户打开游戏时的响应速度。
本发明的第四实施方式涉及一种游戏存档文件存储装置。请参阅图4,本实施方式的游戏存档文件存储装置400包括:
存储模块401,用于响应于云游戏服务器的分片上传请求,将请求上传的存档分片中本地未存储的用户存档分片存储至存档服务器;
用户分片更新模块401,用于根据请求上传的分片信息更新用户的存档分片信息。
可选地,该游戏存档文件存储装置400还包括:
第一下发模块402,用于在接收到请求时将用户的存档分片信息下发至云游戏服务器,供云游戏服务器根据用户的存档分片信息确定待下发的存档分片;以及
第二下发模块403,用于响应于云游戏服务器的请求下发待下发的存档分片,供云游戏服务器将下发的存档分片与本地存档分片拼接成用户的存档文件。
可选地,该游戏存档文件存储装置400还可以包括:
引用计数更新模块,用于根据请求上传的分片信息更新用户的分片引用计数表;分片引用计数表用于记录存储的所有用户存档分片中各个分片的用户引用次数;
回收模块,用于在分片的用户引用次数满足预设条件时删除该分片。
进一步地,该游戏存档文件存储装置400还可以包括:
服务器分片状态更新模块,用于根据请求上传的分片信息更新预设的服务器分片状态表,服务器分片状态表用于记录每次游戏结束时各服务器上的分片更新数量;
分配模块,用于在接收到用户的开始游戏请求时,根据服务器分片状态表将分片更新数量最小的服务器分配至所述用户。
本实施方式与现有技术相比,游戏存档文件存储装置通过将存档文件分片,并且在上传存档文件过程中仅上传存档文件变化部分对应的分片,且在存档文件下载过程中,仅下载本地缺少的分片部分,从而可以大大减少存档文件传输数据量,节约文件传输带宽资源,提高用户打开游戏时的响应速度。并且,本发明实施方式仅存储所有用户的存档文件的不同的分片,大大降低了文件冗余度,从而可大幅节约存储资源。另外,还通过分配分片更新数量最小的服务器给用户使用,进一步降低用户获取存档分片的数量,提升传输带宽利用率。
本发明的第五实施方式涉及一种电子设备。本实施方式的电子设备可以是独立的服务器,也可以是服务器群。如图5所示,该电子设备包括:存储器502和处理器501;
其中,所述存储器502存储有可被所述至少一个处理器501执行的指令,所述指令被所述至少一个处理器501执行以实现如第一或者第二实施方式所述的游戏存档文件存储方法。
该电子设备包括一个或多个处理器501以及存储器502,图5中以一个处理器501为例。处理器501、存储器502可以通过总线或者其他方式连接,图5中以通过总线连接为例。存储器502作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。处理器501通过运行存储在存储器502中的非易失性软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述游戏存档文件存储方法。
存储器502可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序。此外,存储器502可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施方式中,存储器502可选包括相对于处理器501远程设置的存储器,这些远程存储器可以通过网络连接至外接设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
一个或者多个模块存储在存储器502中,当被一个或者多个处理器501执行时,执行上述任意方法实施方式中的游戏存档文件存储方法。
上述设备可执行本发明实施方式所提供的方法,具备执行方法相应的功能模块和有益效果,未在本实施方式中详尽描述的技术细节,可参见本发明实施方式所提供的方法。
本实施方式与现有技术相比,该电子设备通过将存档文件分片,并且在上传存档文件过程中仅上传存档文件变化部分对应的分片,且在存档文件下载过程中,仅下载本地缺少的分片部分,从而可以大大减少存档文件传输数据量,节约文件传输带宽资源,提高用户打开游戏时的响应速度。并且,本发明实施方式仅存储所有用户的存档文件的不同的分片,大大降低了文件冗余度,从而可大幅节约存储资源。另外,还通过分配分片更新数量最小的服务器给用户使用,进一步降低用户获取存档分片的数量,提升传输带宽利用率。
本发明的第五实施方式涉及一种非易失性存储介质,用于存储计算机可读程序,所述计算机可读程序用于供计算机执行上述部分或全部的方法实施例。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
Claims (7)
1.一种游戏存档文件存储方法,应用于云游戏服务器,其特征在于,包括:
在用户的本次游戏结束时,将所述本次游戏的存档文件分片得到第一存档分片,并生成所述第一存档分片的第一分片数据;
将所述用户的本次游戏开始前的第二存档分片与所述第一存档分片对比得到所述本次游戏的待上传分片,具体包括:获取所述第二存档分片的第二分片数据,所述第一分片数据以及所述第二分片数据包括分片数量、总存档文件信息以及各个分片的分片信息,其中,所述总存档文件信息以及所述分片信息用于表征文件内容的唯一性;根据所述总存档文件信息确定所述第一分片数据与所述第二分片数据的总存档文件信息是否一致,若一致,则无待上传分片,若不一致,则逐个对比所述第一分片数据与所述第二分片数据的各个分片的分片信息,以得到所述第一存档分片与所述第二存档分片中的不同的第一存档分片作为所述待上传分片;
将所述待上传分片发送至存档服务器,具体包括:将所述待上传分片的分片信息发送至所述存档服务器;若接收到所述存档服务器反馈的分片上传信息,则根据所述分片上传信息上传所述待上传分片;其中,所述分片上传信息为所述存档服务器上未存储的分片的信息。
2.根据权利要求1所述的游戏存档文件存储方法,其特征在于,所述方法还包括:
在所述用户的下次游戏开始时,获取所述存档服务器存储的所述用户的存档分片信息;
将本地的存档分片信息与所述用户的存档分片信息对比得到待下载分片;
从所述存档服务器下载所述待下载分片,将下载的分片与所述本地的存档分片拼接得到所述用户的存档文件。
3.一种游戏存档文件存储方法,应用于存档服务器,其特征在于,包括:
响应于云游戏服务器的分片上传请求,将请求上传的存档分片中本地未存储的用户存档分片存储至所述存档服务器;
根据请求上传的存档分片信息更新用户的存档分片信息,具体包括:根据请求上传的存档分片信息更新所述用户的分片引用计数表;所述分片引用计数表用于记录存储的所有用户存档分片中各个分片的用户引用次数;若用户存档分片的用户引用次数满足预设条件,则删除所述分片。
4.根据权利要求3所述的游戏存档文件存储方法,其特征在于,所述方法还包括:
在接收到请求时将所述用户的存档分片信息下发至所述云游戏服务器,供所述云游戏服务器根据所述用户的存档分片信息确定待下发的存档分片;
响应于所述云游戏服务器的请求下发所述待下发的存档分片,供所述云游戏服务器将所述下发的存档分片与本地存档分片拼接成所述用户的存档文件。
5.根据权利要求3至4中任一项所述的游戏存档文件存储方法,其特征在于,还包括:
根据请求上传的分片信息更新预设的服务器分片状态表,所述服务器分片状态表用于记录每次游戏结束时各服务器上的分片更新数量;
在接收到用户的开始游戏请求时,根据所述服务器分片状态表将分片更新数量最小的服务器分配至所述用户。
6.一种电子设备,其特征在于,包括:存储器和处理器,存储器存储计算机程序,处理器运行所述计算机程序以实现如权利要求1至2中任一项所述的游戏存档文件存储方法或者权利要求3至5中任一项所述的游戏存档文件存储方法。
7.一种计算机可读存储介质,其特征在于,用于存储计算机可读程序,所述计算机可读程序用于供计算机执行如权利要求1至2中任一项所述的游戏存档文件存储方法或者权利要求3至5中任一项所述的游戏存档文件存储方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911036505.2A CN111054067B (zh) | 2019-10-29 | 2019-10-29 | 游戏存档文件存储方法、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911036505.2A CN111054067B (zh) | 2019-10-29 | 2019-10-29 | 游戏存档文件存储方法、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111054067A CN111054067A (zh) | 2020-04-24 |
CN111054067B true CN111054067B (zh) | 2023-09-05 |
Family
ID=70298451
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911036505.2A Active CN111054067B (zh) | 2019-10-29 | 2019-10-29 | 游戏存档文件存储方法、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111054067B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111603764B (zh) * | 2020-05-28 | 2021-05-28 | 腾讯科技(深圳)有限公司 | 一种云游戏的处理方法及设备 |
CN111632373B (zh) * | 2020-05-30 | 2021-05-28 | 腾讯科技(深圳)有限公司 | 一种启动游戏的方法、装置及计算机可读存储介质 |
CN111821687A (zh) * | 2020-07-01 | 2020-10-27 | 广州点云科技有限公司 | 一种基于云游戏的游戏数据存档共享方法及系统 |
CN111917768B (zh) * | 2020-07-30 | 2022-05-13 | 腾讯科技(深圳)有限公司 | 虚拟场景的处理方法、装置及计算机可读存储介质 |
CN112057853A (zh) * | 2020-08-11 | 2020-12-11 | 广州点云科技有限公司 | 一种基于云游戏的云存档方法 |
CN112214177B (zh) * | 2020-11-05 | 2021-10-15 | 腾讯科技(深圳)有限公司 | 一种数据存储方法、装置及介质 |
CN113467995A (zh) * | 2021-07-06 | 2021-10-01 | 中船工业互联网有限公司 | 一种移动设备上的图片的云管理方法、装置及系统 |
CN115430138B (zh) * | 2022-08-25 | 2023-04-11 | 深圳快狗互动科技有限公司 | 单机游戏数据安全储存方法、装置和计算机设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000093657A (ja) * | 1999-07-30 | 2000-04-04 | Sega Enterp Ltd | 通信媒体利用のゲ―ム装置 |
TW201244784A (en) * | 2011-01-19 | 2012-11-16 | Sega Corp | Game system server, game system, game system control method, and game system server control program |
CN103166957A (zh) * | 2013-02-21 | 2013-06-19 | 浙江大学 | 虚拟游戏与真实环境游戏之间的数据交互方法 |
JP2017056114A (ja) * | 2015-09-18 | 2017-03-23 | 株式会社スクウェア・エニックス | ビデオゲーム処理プログラム、ビデオゲーム処理システム及びビデオゲーム処理方法 |
CN109568947A (zh) * | 2018-11-29 | 2019-04-05 | 咪咕互动娱乐有限公司 | 一种云游戏控制方法、装置、设备和计算机存储介质 |
-
2019
- 2019-10-29 CN CN201911036505.2A patent/CN111054067B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000093657A (ja) * | 1999-07-30 | 2000-04-04 | Sega Enterp Ltd | 通信媒体利用のゲ―ム装置 |
TW201244784A (en) * | 2011-01-19 | 2012-11-16 | Sega Corp | Game system server, game system, game system control method, and game system server control program |
CN103166957A (zh) * | 2013-02-21 | 2013-06-19 | 浙江大学 | 虚拟游戏与真实环境游戏之间的数据交互方法 |
JP2017056114A (ja) * | 2015-09-18 | 2017-03-23 | 株式会社スクウェア・エニックス | ビデオゲーム処理プログラム、ビデオゲーム処理システム及びビデオゲーム処理方法 |
CN109568947A (zh) * | 2018-11-29 | 2019-04-05 | 咪咕互动娱乐有限公司 | 一种云游戏控制方法、装置、设备和计算机存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111054067A (zh) | 2020-04-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111054067B (zh) | 游戏存档文件存储方法、电子设备和存储介质 | |
CN111045715B (zh) | 一种云游戏的热更新方法、系统和可读存储介质 | |
CA3068345C (en) | Witness blocks in blockchain applications | |
CN110019004B (zh) | 一种数据处理方法、装置及系统 | |
US10394452B2 (en) | Selecting pages implementing leaf nodes and internal nodes of a data set index for reuse | |
CN108874803B (zh) | 数据存储方法、装置及存储介质 | |
CN102289382B (zh) | 电视软件更新方法、装置及系统 | |
US20140359066A1 (en) | System, method and device for offline downloading resource and computer storage medium | |
TW202309741A (zh) | 差分包產生方法,差分包產生設備,更新方法,及嵌入式系統 | |
KR20180073128A (ko) | 데이터 블록 비교에 의한 데이터 업데이트 방법 | |
CN112748877A (zh) | 一种文件的整合上传方法及装置、文件的下载方法及装置 | |
KR20220153592A (ko) | 비디오 게임의 인스턴트 플레이를 위한, 그리고 클라이언트 측 게임 데이터의 폐기와 프리페치를 위한 파일 시스템 판독 작동 추적 | |
CN105677754A (zh) | 获取文件系统中子项元数据的方法、装置和系统 | |
CN104967660A (zh) | 一种面向多云架构的网络性能提升方法 | |
CN114564227A (zh) | 应用程序更新方法、装置、电子设备和存储介质 | |
CN110737389B (zh) | 存储数据的方法和装置 | |
CN113220644A (zh) | 一种文件处理方法、装置、设备及存储介质 | |
CN102298527A (zh) | 一种cpe并行升级版本的方法及实现系统 | |
CN113742131B (zh) | 用于存储管理的方法、电子设备和计算机程序产品 | |
CN110784534B (zh) | 数据服务方法、装置、系统及电子设备 | |
CN111586170A (zh) | 资源下载方法、装置、设备及计算机可读存储介质 | |
CN110971962A (zh) | 切片缓存的方法、装置及存储介质 | |
CN113282539B (zh) | 信息加载方法、装置、电子设备及存储介质 | |
CN111309471A (zh) | 数据处理方法、装置及分布式系统 | |
CN113132463B (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 |