一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种游戏资源打包发布系统、方法、电子设备和存储介质与流程

2022-03-22 23:15:28 来源:中国专利 TAG:


1.本技术涉及数据处理技术领域,特别是涉及一种游戏资源打包发布系统、方法、电子设备和存储介质。


背景技术:

2.游戏运营过程中,出于版本更迭和修复bug等,需要经常发布新的游戏版本至用户端。
3.在相关技术中,需要技术人员登录服务器手动执行新版本文件的拷贝、时间校验、正确性校验和打包校验等。该过程步骤复杂且需要多个部门参与。另外,由于人工操作的不确定,稍有不慎便会产生错误进导致版本发布出错。
4.目前针对相关技术中游戏发布方法效率低,准确性差的问题,尚未提出有效的解决方案。


技术实现要素:

5.本技术实施例提供了一种游戏资源打包发布系统、方法、计算机设备和计算机可读存储介质,以至少解决相关技术中的问题。
6.第一方面,本技术实施例提供了一种游戏资源打包发布系统,所述系统包括:时间校验模块、ftp模块和完整性校验模块;
7.所述时间校验模块用于从ntp服务获取标准时间,并根据所述标准时间校准系统时间;
8.所述ftp模块用于从本地存储器获取游戏数据,将所述游戏数据打包并存储至打包目录,其中,所述游戏数据包括服务程序和配置文件,所述服务程序基于所述配置文件运行;
9.所述完整性校验模块用于分别对所述ftp模块中的游戏数据和所述本地存储器中的游戏数据进行信息摘要计算,分别得到第一秘钥信息和第二秘钥信息,以及,
10.判断所述第一秘钥信息与所述第二秘钥信息是否一致,若是,指示所述ftp模块将所述游戏数据存储至发布目录用于发布。
11.在其中一些实施例中,所述系统还包括推送模块;
12.所述推送模块用于在所述第一秘钥信息与所述第二秘钥信息一致的情况下,推送发布就绪信息至业务服务器,
13.以及,在所述第一秘钥信息和所述第二秘钥信息不一致的情况下,推送校验失败信息至所述业务服务器。
14.在其中一些实施例中,所述业务服务器用于:
15.在接收到所述发布就绪信息的情况下,从所述ftp模块的发布目录下获取所述游戏数据;
16.生成所述游戏数据对应的安装地址,并将所述安装地址推送至业务终端。
17.在其中一些实施例中,所述系统还包括编译模块,所述编译模块用于:
18.在所述ftp模块从所述本地存储器获取所述游戏数据之前,将游戏源代码编译得到所述服务程序。
19.在其中一些实施例中,所述完整性校验模块通过信息摘要算法进行所述信息摘要计算,其中,所述信息摘要算法是md5算法。
20.在其中一些实施例中,所述完整性校验模块包括:信息获取模块、填充模块、分块模块、循环模块和输出模块,其中,
21.所述信息获取模块用于分别从所述本地存储器和所述ftp模块获取游戏数据;
22.所述填充模块用于在所述游戏数据中的子数据的尾部进行补位和长度填充,将所述子数据转换为预设长度;
23.所述分块模块用于将所述填充后的子数据分割为多个子数据组;
24.所述循环运算模块用于基于所述子数据组进行循环运算,得到md5运算结果;
25.所述输出模块用于将所述md5运算结果输出,并将所述本地存储器中游戏数据的md5运算结果与ftp模块中游戏数据的md5运算结果进行对比,若所述对比的结果一致,则校验成功,若所述对比的结果不一致,则校验失败。
26.第二方面,本技术实施例提供了一种游戏资源打包发布方法,所述方法包括:
27.通过时间校验模块从ntp服务获取标准时间,并根据所述标准时间校准系统时间;
28.所述系统时间校准之后,通过ftp模块从本地存储器获取游戏数据,将所述游戏数据打包并存储至打包目录,其中,所述游戏数据包括服务程序和配置文件,所述服务程序基于所述配置文件运行;
29.通过完整性校验模块分别对所述ftp模块中的游戏数据和所述本地存储器中的游戏数据进行信息摘要计算,分别得到第一秘钥信息和第二秘钥信息,
30.以及,判断所述第一秘钥信息与所述第二秘钥信息是否一致,若是,指示所述ftp模块将所述游戏数据存储至发布目录用于发布。
31.在其中一些实施例中,所述ftp模块将所述游戏数据存储至发布目录用于发布之后,所述方法还包括:
32.在所述第一秘钥信息与所述第二秘钥信息一致的情况下,推送发布就绪信息至业务终端,
33.以及,在所述第一秘钥信息和所述第二秘钥信息不一致的情况下,推送校验失败信息至所述业务服务器。
34.第三方面,本技术实施例提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第二方面所述的游戏资源发布方法。
35.第四方面,本技术实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第二方面所述的游戏资源发布方法。
36.相比于相关技术,本技术实施例提供的游戏资源打包发布方法,通过时间校验模块从ntp服务获取标准时间,并根据标准时间校准系统时间;系统时间校准之后,通过ftp模块从本地存储器获取游戏数据,将游戏数据打包并存储至打包目录,其中,游戏数据包括服务程序和配置文件,服务程序基于配置文件运行;通过完整性校验模块分别对ftp模块中的
可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本技术所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
47.本技术提供的一种游戏资源打包发布方法,可以应用在如图1所示的应用环境中,图1是根据本技术实施例的游戏资源打包发布方法的应用环境示意图。如图1所示,终端10与服务器11通过网络进行通信,其中,该服务器11可以是各单位自建的ftp(file transfer protocol文件传输协议)服务器。进一步的,服务器11可以从终端10获取游戏数据,以及将游戏数据打包并存储。同时,通过信息摘要算法对终端10上的游戏数据和服务器11上的游戏数据进行对比校验,在校验结果显示两者一致的情况下,服务器11将存储的游戏数据拷贝至发布目录用于游戏发布。通过本技术,可以大幅简化游戏发布过程中的操作步骤、提高效率、以及提升安全性。需要说明的是,本技术实施例中的终端10可以是智能手机、平板电脑、台式电脑和笔记本电脑等,服务器11可以是企业单位自建的ftp服务器或者是第三方云服务器。
48.本技术实施例提供了一种游戏资源打包发布系统,图2是根据本技术实施例的游戏发布系统的结构框图,如图2所示,该系统包括:时间校验模块20、ftp模块21、完整性校验模块22和推送模块23;
49.时间校验模块20用于从ntp(network time protocol,网络时间协议)服务获取标准时间,并根据该标准时间校准打包发布系统的时间。其中,ntp服务是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器做同步化,可以提供高精准度的时间校正,且可介由加密确认的方式来防止恶毒的协议攻击。在本技术实施例中,采用中国科学院国家授时中心提供的ntp服务,该ntp服务维护有一个标准时间。可选的,首先由时间校验模块20向该ntp服务发送授时请求,之后,ntp服务收到请求后将该标准时间返回至时间校验模块20,进一步的,时间校验模块20再基于该标准时间对系统进行时间校准。
50.需要说明的是,在游戏发布流程中,若时间不准确,会导致线上环境使用异常,并且在出现问题是无法准确定位到出现问题的版本时间,同时,也不利于判断线上服务是否已被更新。因此,本实施例中,从ntp服务获取标准时间并基于该标准时间进行系统时间的校准,能够减少或避免因时间不准导致的异常问题。
51.ftp模块21用于从本地存储器获取游戏数据,将游戏数据打包并存储至打包目录,其中,游戏数据包括服务程序和配置文件,服务程序基于配置文件运行。需要说明的是,ftp服务器(file transfer protocol server)是在互联网上提供文件存储和访问服务的计算机,它们依照ftp协议提供服务。该ftp模块21可以部署在由公司或组织自行搭建的云存储服务器上,也可以是第三方搭建的公共云存储服务器上,如阿里云服务、华为云服务等。
52.另外,可以理解的是,该游戏数据是用于发布的更新游戏版本的数据,其由服务程序和配置文件组成,服务程序是指将源代码编译产生的以.exe为后缀的二进制文件,而配置文件是指运行服务程序所需要读取的文件,例如游戏道具的数值,游戏中任务的内容和战斗逻辑等。
53.完整性校验模块22用于分别对ftp模块21中的游戏数据和本地存储器中的游戏数据进行信息摘要计算,分别得到第一秘钥信息和第二秘钥信息,以及判断第一秘钥信息与第二秘钥信息是否一致,若是,指示ftp模块21将游戏数据存储至发布目录用于发布。
54.本实施例中,通过信息摘要算法可以将任意长度的信息经过处理之后输出该信息对应的数字指纹,信息摘要算法对于一个输入将得到一个唯一的输出;即若两个输入信息源相同,则输出的秘钥信息肯定相同,反之,若两个输入信息源不同,则输出的秘钥信息肯定不同。本实施例中,若本地的游戏数据的计算结果与ftp模块21上的游戏数据的计算不一致,即代表数据在传输过程中出现错误,或者游戏数据被改动过。
55.因此,进行信息摘要计算并进一步的判断本地的计算结果与ftp上的结果是否一致,可以用来确定判断上传到ftp模块21的游戏数据是否与本地存储器中的一致,能够保证用于发布的游戏数据准确。
56.推送模块23用于在第一秘钥信息与第二秘钥信息一致的情况下,推送发布就绪信息至业务服务器,以及,在第一秘钥信息和第二秘钥信息不一致的情况下,推送校验失败信息至业务服务器。
57.本实施例中,在第一秘钥信息与第二秘钥信息一致时,就表示ftp模块21中的游戏数据与本地存储中的游戏数据相同,即游戏数据安全准确可用于发布。在该种情况下,由推送模块23将发布就绪信息推送至如测试部门、运维部门、公关部门的业务服务器。对应的,在第一秘钥信息与第二秘钥信息不一致时,就表示ftp模块21中的游戏数据与本地存储中的游戏数据不相同,可能存在传输错误或者有被改动过,在该种情况下,就需要将校验失败信息发送至业务服务器,并终止打包流程,待确认异常原因并修复后,再重启打包流程。
58.通过本实施例提供的游戏打包发布系统,相比较于相关技术中需要人工手动执行新版本文件的拷贝、时间校验、正确性校验和打包校验等步骤来实现游戏打包发布的方法,本技术提供的游戏打包发布系统可以自动化的完成上述流程,同时采用机器执行的方式,可以避免因人为疏忽导致的文件遗漏、文件文件错误等问题,从而提升打包流程的安全性和准确性。通过该系统,无需开发人员实时参与,非研发人员也可以使用本系统进行游戏数据的打包流程,因此也可以提升企业或组织的整体效率。
59.在其中一些实施例中,在将游戏数据转存到发布目录且推送发布就绪信息之后,游戏发布流程继续进行,通过业务服务器从ftp模块21的发布目录下获取游戏数据,并生成该游戏数据对应的安装地址,最后将安装地址推送至业务终端。其中,该业务终端即各个游戏玩家的终端,其可以是智能手机、平板电脑和pc电脑等。
60.在其中一些实施例中,该游戏打包发布系统还包括编译模块24,在ftp模块21从本地存储器获取游戏数据之前,还需通过编译模块24将研发人员用高级语言(例如python、c、c 、java等)设计的游戏源代码进行编译,以得到二进制机器语言的服务程序。其中,编译的过程可以采用一些常见的编译器,例如,numba、visual c 和borland c 等。通过本实施例提供的编译模块24,可以将游戏源代码编译成电子设备可以直接运行的目标程序用于发布,能够较好地提升游戏数据的打包效率。
61.在其中一些实施例中,完整性校验模块22通过信息摘要算法进行信息摘要计算,其中,该信息摘要算法是md5(md5 message-digest algorithm)算法,其是一种被广泛使用的密码杂凑函数,可以产生出一个128位元(16位元组)的散列值(hash value),由于md5算法对于原始数据的计算结果具有唯一性,可以用于确保信息传输完整一致。
62.在其中一些实施例中,完整性校验模块22包括:信息获取模块220、填充模块221、分块模块222、循环模块223和输出模块224,其中,信息获取模块220用于分别从本地存储器
和ftp模块21获取游戏数据。填充模块221用于在游戏数据中的子数据的尾部进行补位和长度填充,将子数据转换为预设长度;图3是根据本技术实施例的对子数据进行长度填充的示意图,如图3所示,将原始数据填充为数据长度为512bit的整数倍;分块模块222用于将填充后的子数据分割为多个子数据组,即每512bit作为一个子数据组。循环运算模块用于基于子数据组进行循环运算,前一个分组得到的md5结果作为下一个分组的状态输入并依次循环,并在循环结束后得到md5运算结果。进一步的,输出模块224就用于将md5运算结果输出,并将本地存储器中游戏数据的md5运算结果与ftp模块21中游戏数据的md5运算结果进行对比,若对比的结果一致,则校验成功,若对比的结果不一致,则校验失败。
63.本技术实施例还提供了一种游戏打包发布的方法,图4是根据本技术实施例的游戏打包发布方法的流程图,如图4所示,该流程包括如下步骤:
64.s401,通过时间校验模块从ntp服务获取标准时间,并根据标准时间校准系统时间;
65.s402,系统时间校准之后,通过ftp模块从本地存储器获取游戏数据,将游戏数据打包并存储至打包目录,其中,游戏数据包括服务程序和配置文件,服务程序基于配置文件运行;
66.s403,通过完整性校验模块分别对ftp模块中的游戏数据和本地存储器中的游戏数据进行信息摘要计算,分别得到第一秘钥信息和第二秘钥信息,以及,判断第一秘钥信息与第二秘钥信息是否一致,若是,指示ftp模块将游戏数据存储至发布目录用于发布。
67.通过上述步骤s401至s403,相比较于相关技术中需要人工手动执行新版本文件的拷贝、时间校验、正确性校验和打包校验等步骤来实现游戏打包发布的方法,本技术提供的游戏打包发布方法可以自动化的完成上述流程,同时采用机器执行的方式,可以避免因人为疏忽导致的文件遗漏、文件文件错误等问题,从而提升打包流程的安全性和准确性。通过该方法,无需开发人员实时参与,非研发人员也可以通过本系统进行游戏数据的打包流程,因此也可以提升企业或组织的整体效率。
68.在其中一些实施例中,在tp模块将游戏数据存储至发布目录用于发布之后,该方法还包括:在第一秘钥信息与第二秘钥信息一致的情况下,推送发布就绪信息至业务终端,以及在第一秘钥信息和第二秘钥信息不一致的情况下,推送校验失败信息至业务服务器。
69.在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种游戏资源打包发布方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
70.在一个实施例中,图5是根据本技术实施例的电子设备的内部结构示意图,如图5所示,提供了一种电子设备,该电子设备可以是服务器,其内部结构图可以如图5所示。该电子设备包括通过内部总线连接的处理器、网络接口、内存储器和非易失性存储器,其中,该
非易失性存储器存储有操作系统、计算机程序和数据库。处理器用于提供计算和控制能力,网络接口用于与外部的终端通过网络连接通信,内存储器用于为操作系统和计算机程序的运行提供环境,计算机程序被处理器执行时以实现一种游戏资源打包发布方法,数据库用于存储数据。
71.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
72.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
73.以上实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献