CN116212398B - 一种基于数据中台的游戏管理方法、装置、设备及介质 - Google Patents
一种基于数据中台的游戏管理方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN116212398B CN116212398B CN202310228248.2A CN202310228248A CN116212398B CN 116212398 B CN116212398 B CN 116212398B CN 202310228248 A CN202310228248 A CN 202310228248A CN 116212398 B CN116212398 B CN 116212398B
- Authority
- CN
- China
- Prior art keywords
- database
- game
- data
- data center
- 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
- 238000007726 management method Methods 0.000 title claims abstract description 73
- 230000006870 function Effects 0.000 claims abstract description 56
- 238000000034 method Methods 0.000 claims abstract description 46
- 238000004590 computer program Methods 0.000 claims description 15
- 238000004088 simulation Methods 0.000 claims description 15
- 230000000007 visual effect Effects 0.000 claims description 11
- 238000013475 authorization Methods 0.000 claims description 10
- 238000005516 engineering process Methods 0.000 claims description 10
- 238000007689 inspection Methods 0.000 claims description 6
- 230000003993 interaction Effects 0.000 claims description 6
- 238000010276 construction Methods 0.000 claims description 4
- 238000012217 deletion Methods 0.000 claims description 3
- 230000037430 deletion Effects 0.000 claims description 3
- 229940004975 interceptor Drugs 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 230000001960 triggered effect Effects 0.000 claims description 3
- 238000012360 testing method Methods 0.000 abstract description 11
- 238000011161 development Methods 0.000 abstract description 6
- 238000007405 data analysis Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 4
- 238000010168 coupling process Methods 0.000 description 4
- 238000005859 coupling reaction Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 230000008676 import Effects 0.000 description 3
- 241000589248 Legionella Species 0.000 description 2
- 208000007764 Legionnaires' Disease Diseases 0.000 description 2
- 238000007792 addition Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013079 data visualisation Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 230000001360 synchronised effect Effects 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/70—Game security or game management aspects
- A63F13/77—Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
- G06F9/4451—User profiles; Roaming
-
- 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/53—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 details of basic data processing
-
- 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
-
- 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)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及游戏管理技术领域,尤其涉及一种基于数据中台的游戏管理方法、装置、设备及介质,所述方法具体包括:根据Spring Boot、Vue、Spring Security和JWT分别搭建第一后端、第一前端和权限管理模块,配置第一数据库和第二数据库,生成数据中台,所述第一数据库为MySQL数据库,所述第二数据库为Redis数据库;将游戏数据上传至所述第一数据库和所述第二数据库,基于所述数据中台管理所述游戏数据,并根据多个辅助工具实现多样化游戏管理功能。本发明可以实现针对游戏内容的精细化管理和数据分析,提高了游戏管理、游戏开发、游戏测试的效率。
Description
技术领域
本发明涉及游戏管理技术领域,尤其涉及一种基于数据中台的游戏管理方法、装置、设备及介质。
背景技术
在如今的大数据时代,掌握数据便是掌握先机,因此游戏数据的收集和分析对于管理者把控整个游戏的生命周期更是至关重要。在游戏世界中,一个小小的数据错误往往可能带来非常严重的后果,因此尽量避免数值配置错误往往是游戏更新前的一个重要检查部分,但庞大的数据藉由人工来进行检查显然是不合理的。
而且,网络游戏的多服玩法如今已非常常见,而多服玩法除了通信层面上的技术难度之外,带来的另一个问题就是游戏环境的搭建困难。例如对于联盟跨服玩法,如果要测试某个基于此玩法的功能,那么必须先搭建一个跨服联盟环境,既浪费测试人员大量时间,又需要多台服务器互相配合,十分的不便,且某一环节错误还可能造成测试结果的不准确,这也是一直困扰游戏开发者和测试者的一大难题。
此外,随着游戏版本的迭代,以及多个海外版本的开发,可能不同的版本之间需要进行差异化对比,以便对游戏内容进行调整和把控。
发明内容
本发明的目的在于提供一种基于数据中台的游戏管理方法、装置、设备及介质,可以实现针对游戏内容的精细化管理和数据分析,提高了游戏管理、游戏开发、游戏测试的效率,以解决上述现有技术问题的至少之一。
一方面,本发明提供了一种基于数据中台的游戏管理方法,所述方法具体包括:
根据Spring Boot、Vue、Spring Security和JWT分别搭建第一后端、第一前端和权限管理模块,配置第一数据库和第二数据库,生成数据中台,所述第一数据库为MySQL数据库,所述第二数据库为Redis数据库;
将游戏数据上传至所述第一数据库和所述第二数据库,基于所述数据中台管理所述游戏数据,并根据多个辅助工具实现多样化游戏管理功能。
进一步的,所述根据Spring Boot、Vue、Spring Security和JWT分别搭建第一后端、第一前端和权限管理模块,配置第一数据库和第二数据库,生成数据中台,具体包括:
创建第一数据库和第二数据库,所述第一数据库为MySQL数据库,所述第二数据库为Redis数据库;
根据IDEA创建Spring Boot项目,生成第一后端,并在所述第一后端的application.properties文件中写入数据库连接配置,连接所述第一后端和所述第一数据库;
根据Node.js安装Vue-cli,然后使用命令行创建Vue项目,生成第一前端,连接所述第一前端和所述第二数据库;
在所述第一前端内插入axios插件,并在第一Vue组件main.js中引入所述axios插件,实现所述第一前端和所述第一后端的数据交互;
将Spring Security依赖包导入所述第一后端,生成Spring Security组件,然后根据所述Spring Security组件实现JWT认证,生成权限管理模块。
更进一步的,所述根据所述Spring Security组件实现JWT认证,具体包括:
根据所述第一前端向所述第一后端发送第一登录请求,所述第一登录请求包括第一用户的ID和密码;
基于所述第一后端响应所述第一登录请求,根据第一Spring Security组件UserDetialsService从所述第一数据库内提取所述第一用户的信息数据,并根据第二Spring Security组件AuthenticationManager判定所述第一用户的ID和密码均正确;
基于JWT技术将所述第一用户的信息数据编码成token字符串,然后将所述token字符串发送至所述第一前端,并根据所述第一前端将所述token字符串存入所述第二数据库;
当所述第一前端向所述第一后端发送第二登录请求时,根据所述第一前端从所述第二数据库内提取所述token字符串并存入所述第二登录请求的Authorization属性中;
基于第三Spring Security组件FilterSecurityInterceptor判定所述token字符串有效,向所述第一前端返回登录成功结果。
进一步的,所述将游戏数据上传至第一数据库和第二数据库,基于所述数据中台管理所述游戏数据,并根据多个辅助工具实现多样化游戏管理功能,具体包括:
将游戏排期数据和游戏版本数据上传至所述第一数据库和所述第二数据库,根据所述数据中台的Vue组件,在所述第一前端生成可视化图形;
将数据配置表上传至所述第一数据库和所述第二数据库,基于所述数据中台和第一服务器检查所述数据配置表;
将游戏GM指令的参数上传至所述第一数据库和所述第二数据库,基于所述数据中台通过http协议确定目标服务器执行所述游戏GM指令;
将配置跨服环境参数上传至所述第一数据库和所述第二数据库,连接所述数据中台和跨服服务器,根据所述数据中台通过所述跨服服务器转发所述配置跨服环境参数至游戏服务器集合;
将战斗模拟参数上传至所述第一数据库和所述第二数据库,连接所述数据中台和战斗服务器,根据所述数据中台将所述战斗模拟参数转发至所述战斗服务器,并由所述数据中台分析所述战斗服务器返回的战斗结果。
更进一步的,所述将游戏排期数据和游戏版本数据上传至所述第一数据库和所述第二数据库,根据所述数据中台的Vue组件,在所述第一前端生成可视化图形,具体包括:
安装Echarts库,并在第一Vue组件main.js中引入所述Echarts库;
创建第二Vue组件,在所述第二Vue组件内确定用于容纳图表的div容器,并设置第一函数;
在所述第一函数内根据所述div容器初始化Echarts实例以及设置option函数;
将游戏排期数据和游戏版本数据上传至所述第一数据库和所述第二数据库,根据所述数据中台调用所述游戏排期数据和所述游戏版本数据并存入所述option函数内,同时在所述option函数内确定图表类型;
根据mounted函数调用所述第一函数,在所述第一前端生成可视化图形。
更进一步的,所述将数据配置表上传至所述第一数据库和所述第二数据库,基于所述数据中台和第一服务器检查所述数据配置表,具体包括:
将数据配置表上传至所述第一数据库和所述第二数据库,根据所述数据中台对所述数据配置表进行第一检查,所述第一检查包括表格名称检查、表格主键ID检查和表格误删检查;
由所述数据中台将所述数据配置表转发给第一服务器,根据所述第一服务器对所述数据配置表进行第二检查,并将所述第二检查的结果返回至所述数据中台,所述第二检查包括表格ID关联检查、表格映射关系检查、表格数据区间检查和表格类型检查;
基于所述数据中台,通过广播工具将所述第一检查的结果和所述第二检查的结果转发给管理人员。
更进一步的,所述将游戏GM指令的参数上传至所述第一数据库和所述第二数据库,基于所述数据中台通过http协议确定目标服务器执行所述游戏GM指令,具体包括:
为所述数据中台开放目标服务器的第一端口;
将游戏GM指令的参数上传至所述第一数据库和所述第二数据库,基于所述数据中台的Vue组件为所述游戏GM指令的参数生成对应的GM指令按钮,同时根据javadoc技术生成所述游戏GM指令的API文档,所述API文档包括所述游戏GM指令的使用方式和参数解释;
当所述GM指令按钮被触发时,基于所述数据中台将所述游戏GM指令的参数转换为http请求;
通过所述第一端口,根据所述数据中台将所述http请求发送至所述目标服务器,并由所述目标服务器响应所述http请求。
另一方面,本发明还提供了一种基于数据中台的游戏管理装置,所述装置具体包括:
搭建模块,用于根据Spring Boot、Vue、Spring Security和JWT分别搭建第一后端、第一前端和权限管理模块,配置第一数据库和第二数据库,生成数据中台,所述第一数据库为MySQL数据库,所述第二数据库为Redis数据库;
管理模块,用于将游戏数据上传至所述第一数据库和所述第二数据库,基于所述数据中台管理所述游戏数据,并根据多个辅助工具实现多样化游戏管理功能。
另一方面,本发明还提供了一种计算机设备,包括:存储器和处理器及存储在存储器上的计算机程序,当所述计算机程序在处理器上被执行时,实现如上述方法中任一项所述的基于数据中台的游戏管理方法。
另一方面,本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时实现如上述方法中任一项所述的基于数据中台的游戏管理方法。
与现有技术相比,本发明具有以下技术效果的至少之一:
1、实现统一化管理,不仅仅是对游戏服务器和游戏工具的管理,更是对游戏排期以及游戏分支进行管理。
2、将gm指令移植到数据平台后,测试人员只需要在平台上使用这些gm命令,便可以像本地操作一样快速地完成游戏目标,十分的便捷,同时还提供这些gm指令的使用方式和参数解释,便于测试时进行查询和使用。
3、数据平台上掌握着所有服务器的信息和连接,很容易做到游戏环境的模拟,可以选择多个服务器同时修改配置,共同组成一个完整的跨服环境。
4、只需要将数据配置表格上传到数据中台,由数据中台分析处理后若发现错误则予以建议和预警,返还给策划进行再次修改。并且还可提供多种表格检查逻辑和策略以供策划选择,针对不同的表格或者不同的数据进行不同的处理分析,大大降低了表格配置的错误率,减少了人工检查所带来的耗时。
附图说明
是为了更清楚地说明本申请实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种基于数据中台的游戏管理方法的流程示意图;
图2是本发明实施例提供的一种基于数据中台的游戏管理方法的数据中台的结构示意图;
图3是本发明实施例提供的一种基于数据中台的游戏管理方法的第一游戏管理功能的实施示意图;
图4是本发明实施例提供的一种基于数据中台的游戏管理方法的第二游戏管理功能的实施示意图;
图5是本发明实施例提供的一种基于数据中台的游戏管理方法的第三游戏管理功能的界面示意图;
图6是本发明实施例提供的一种基于数据中台的游戏管理方法的第三游戏管理功能的实施示意图;
图7是本发明实施例提供的一种基于数据中台的游戏管理方法的第四游戏管理功能的实施示意图;
图8是本发明实施例提供的一种基于数据中台的游戏管理方法的第五游戏管理功能的实施示意图;
图9是本发明实施例提供的一种基于数据中台的游戏管理装置的结构示意图;
图10是本发明实施例提供的一种计算机设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
在如今的大数据时代,掌握数据便是掌握先机,因此游戏数据的收集和分析对于管理者把控整个游戏的生命周期更是至关重要。在游戏世界中,一个小小的数据错误往往可能带来非常严重的后果,因此尽量避免数值配置错误往往是游戏更新前的一个重要检查部分,但庞大的数据藉由人工来进行检查显然是不合理的。
而且,网络游戏的多服玩法如今已非常常见,而多服玩法除了通信层面上的技术难度之外,带来的另一个问题就是游戏环境的搭建困难。例如有一个联盟跨服玩法,如果要测试某个基于此玩法的功能,那么必须先搭建一个跨服联盟环境,既浪费测试人员大量时间,又需要多台服务器互相配合,十分的不便,且某一环节错误还可能造成测试结果的不准确,这也是一直困扰游戏开发者和测试者的一大难题。
此外,随着游戏版本的迭代,以及多个海外版本的开发,可能不同的版本之间需要进行差异化对比,以便对游戏内容进行调整和把控,因此需要将这些数据统一收集后以图表或者图形的方式表现,更加直观和简洁地呈现出来。
基于此,参照图1,本发明实施例提供了一种基于数据中台的游戏管理方法,所述方法具体包括:
S101:根据Spring Boot、Vue、Spring Security和JWT分别搭建第一后端、第一前端和权限管理模块,配置第一数据库和第二数据库,生成数据中台,所述第一数据库为MySQL数据库,所述第二数据库为Redis数据库。
在一些实施例中,所述根据Spring Boot、Vue、Spring Security和JWT分别搭建第一后端、第一前端和权限管理模块,配置第一数据库和第二数据库,生成数据中台,具体包括:
创建第一数据库和第二数据库,所述第一数据库为MySQL数据库,所述第二数据库为Redis数据库;
根据IDEA创建Spring Boot项目,生成第一后端,并在所述第一后端的application.properties文件中写入数据库连接配置,连接所述第一后端和所述第一数据库;
根据Node.js安装Vue-cli,然后使用命令行创建Vue项目,生成第一前端,连接所述第一前端和所述第二数据库;
在所述第一前端内插入axios插件,并在第一Vue组件main.js中引入所述axios插件,实现所述第一前端和所述第一后端的数据交互;
将Spring Security依赖包导入所述第一后端,生成Spring Security组件,然后根据所述Spring Security组件实现JWT认证,生成权限管理模块。
该实施例中,数据中台是基于Spring Boot、Spring Security、JWT、Redis&Mysql、Vue等技术的前后端分离式平台。参照图2,该数据中台的第一前端是基于Vue技术构建的,Vue是一套用于构建用户界面的渐进式前端框架,与其它大型框架不同的是,Vue十分轻量级,被设计为可以自底向上逐层应用。Vue的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue也完全能够为复杂的单页应用提供驱动。该数据中台的第一后端使用Spring Boot进行搭建,Spring Boot默认配置了很多框架的使用方式,使用SpringBoot构建的Spring应用可以直接打包为一个独立可执行的jar或war包,使用java-jar命令即可运行,不需要管理依赖的第三方库,也不需要依赖外部容器来启动应用。
其中,第一后端与第一数据库MySQL连接,第一前端与第二数据库Redis连接,这是由于MySQL是关系型数据库,用于持久化地将数据库存储到硬盘,功能强大,但是速度较慢,适合作为第一后端的数据库,Redis则是非关系型(缓存)数据库,用于将使用较为频繁的数据存储到缓存中,读取速度快,适合作为第一前端的数据库。
Spring Security和JWT构成第一后端和第一前端之间的权限管理模块。SpringSecurity是一个权限管理框架,核心是认证和授权,提供了各种便捷的注解和标签,十分契合Spring Boot的开发。JWT全称是Json web token,是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准,JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该token也可直接被用于认证,也可被加密。
由于数据中台为前后端分离式平台,因此第一后端和第一前端会出现跨域问题,前后端的代码运行在不同的服务器上的时候就会出现跨域问题,即浏览器不能执行其他网站的脚本,它是由浏览器的同源策略造成的,是浏览器对javascript施加的安全限制。同源策略是一种约定,是浏览器最核心也最基本的安全功能,因此也限制了第一后端和第一前端之间的数据交互。该实施例中通过在第一前端内插入axios插件实现跨域请求,axios是一个基于promise网络请求库,作用于浏览器和node.js的http客户端中,第一前端可以基于axios向第一后端发出get、post等请求。
在第一Vue组件main.js中引入所述axios插件,其语句为
import axios from'axios'
Vue.prototype.$axios=axios
此外,也有其他的方法解决第一后端和第一前端之间的跨域问题,如下载安装nginx服务器,将Vue项目部署在nginx服务器上,通过设置nginx.conf配置文件来进行跨域请求,也可将Vue项目部署在Tomcat服务器上并设置相关的配置项以实现跨域请求。
在一些实施例中,所述根据所述Spring Security组件实现JWT认证,具体包括:
根据所述第一前端向所述第一后端发送第一登录请求,所述第一登录请求包括第一用户的ID和密码;
基于所述第一后端响应所述第一登录请求,根据第一Spring Security组件UserDetialsService从所述第一数据库内提取所述第一用户的信息数据,并根据第二Spring Security组件Authentication Manager判定所述第一用户的ID和密码均正确;
基于JWT技术将所述第一用户的信息数据编码成token字符串,然后将所述token字符串发送至所述第一前端,并根据所述第一前端将所述token字符串存入所述第二数据库;
当所述第一前端向所述第一后端发送第二登录请求时,根据所述第一前端从所述第二数据库内提取所述token字符串并存入所述第二登录请求的Authorization属性中;
基于第三Spring Security组件FilterSecurityInterceptor判定所述token字符串有效,向所述第一前端返回登录成功结果。
该实施例中,JWT的token认证相比起传统的token认证和session认证更适用于分布式微服务和移动端应用,可以被保存在第一前端的缓存内,即第二数据库——Redis数据库,不需要再保存一份信息到第一后端。第一前端第一次向第一后端使用第一用户的用户名和密码请求登录时,第一后端基于Spring Security组件从第一数据库——MySQL数据库内抽取用户信息,验证用户名和密码是否正确,验证正确后则生成一个token字符串返回给第一前端,第一前端将该token字符串存入第二数据库内,这样以后每次第一前端向第一后端发送登录第一用户的账号的请求时,不需要再输入用户名和密码,只需要将token字符串发给第一后端的Spring Security组件校验,如校验通过则登陆成功。
JWT是由标头(Header)、有效载荷(Payload)和签名(Signature)三部分组成的,生成token时,第一后端将第一用户的用户信息作为JWT的效载荷(Payload),与标头(Header)分别进行Base64编码拼接后签名,形成token字符串。第一前端发出第二登录请求时,该第二登录请求为http请求,其中Authorization属性是http安全请求的首部,可以将作为用户身份凭证的token字符串存入Authorization属性内,再由第一后端从第二登录请求的Authorization属性内取出token字符串。
Spring Security组件构成认证和校验JWT的过滤器,通过各个Spring Security组件实现提取封装用户信息、认证用户名密码是否正确、token字符串是否有效等系列功能,以下为各个Spring Security组件及其作用:
UserDetails:用于封装用户信息;
UserDetialsService:用户获取UserDetails;
Authentication Manager:认证管理,用于执行认证核心逻辑;
AuthenticationEntryPoint:认证异常处理器;
FilterSecurityInterceptor:授权过滤器,其中又包括四个次组件——SecurityMetadataSource,用于获取当前请求的鉴权规则;GrantedAuthority,鉴权规则;AccessDecisionManger,授权管理,用于执行授权核心逻辑;AccessDeniedHandler,授权异常处理器。
S102:将游戏数据上传至所述第一数据库和所述第二数据库,基于所述数据中台管理所述游戏数据,并根据多个辅助工具实现多样化游戏管理功能。
在一些实施例中,所述将游戏数据上传至第一数据库和第二数据库,基于所述数据中台管理所述游戏数据,并根据多个辅助工具实现多样化游戏管理功能,具体包括:
将游戏排期数据和游戏版本数据上传至所述第一数据库和所述第二数据库,根据所述数据中台的Vue组件,在所述第一前端生成可视化图形;
将数据配置表上传至所述第一数据库和所述第二数据库,基于所述数据中台和第一服务器检查所述数据配置表;
将游戏GM指令的参数上传至所述第一数据库和所述第二数据库,基于所述数据中台通过http协议确定目标服务器执行所述游戏GM指令;
将配置跨服环境参数上传至所述第一数据库和所述第二数据库,连接所述数据中台和跨服服务器,根据所述数据中台通过所述跨服服务器转发所述配置跨服环境参数至游戏服务器集合;
将战斗模拟参数上传至所述第一数据库和所述第二数据库,连接所述数据中台和战斗服务器,根据所述数据中台将所述战斗模拟参数转发至所述战斗服务器,并由所述数据中台分析所述战斗服务器返回的战斗结果。
该实施例中,跨服即是需要用到多个服务器,并且在多个服务器之间进行通讯交互。原本的跨服搭建主要是使用配表,本地修改后需要重启服务器,而且往往时多个服务器都需要进行重复相同的操作。参照图3,数据中台通过使用跨服服务器专门负责跨服环境的搭建,直接将结果同步到全部的服务器,不需要重新启动和调整表格。操作者可以在数据中台查看目前所有的可用服务器和服务器之间的关系,修改跨服配置可借助跨服服务器直接进行修改。例如A游戏服绑定在B世界服上,可以直接修改为A游戏服绑定在C世界服。原本的配置搭服只能支持一种跨服环境的搭建,而使用跨服模拟可以做到多种跨服环境搭建,比如游戏内有多种跨服玩法,连服玩法、军团玩法等等,服务器A在跨服模拟中可以作为连服跨服环境的成员也可以作为军团跨服环境的成员。由数据中台统一调配资源,在自己服务器不够用的情况下,可以借助其他人的跨服环境加入进去,继续自己需要的测试。
现有的战斗模拟实现方案主要有两种,第一种是使用单独一台服务器作为战斗服务器,专门模拟游戏中的战斗,使用者需要先将战斗数据上传(多少人战斗,具体战力装备等数据如何,战斗多少次,附带哪些天赋),由战斗服务器模拟进行战斗返回战斗结果。第二种是在本地服务器进行战斗模拟,在本地数据库导入需要的数据(同上),使用多种gm命令执行战斗并返回战斗结果。其优缺点都很明显,使用战斗服务器环境统一,便于数据分析,但是多使用了一台服务器的资源,如果需要对战斗中部分逻辑进行修改,需要去这台服务器进行修改,因为是公用的所以还有可能影响其他人使用。使用本地战斗模拟器,每个人的环境都可能有所不同,所执行结果会出现不一致,进行不同服务器的玩家测试需要统一导入到本地数据库,但是在本地修改战斗逻辑并配合gm使用相对灵活和简单,也不需要每次都上传数据减少了耗时。
本实施例使用的主要是第二种在本地的战斗模拟器,主要由swing开发界面,结合数据中台后,其流程为上传战斗数据,可以指定到不同的服务器进行战斗模拟,其本质还是在对应服务器进行战斗模拟,备份一份战斗结果到数据中台。既可以使用空闲的测试服务器又可以使用指定的私有服务器,相当于这些服务器都变成了战斗服务器。收集大量的战斗结果还可以由数据中台进行分析,便于查找问题或者调整数值。如:参照图4,测试人员上传数据到数据中台,模拟A与B进行战斗,该数据包括但不限于A是什么装备什么天赋,B是什么装备什么天赋,战斗多少次,战斗时长多久等,也就是告诉数据中台需要模拟的战斗是什么样的。数据中台帮测试人员找一个服务器,也就是在战斗服务器、服务器A、服务器B和服务器C中找到一个可以用的,在找到的服务器上进行战斗模拟。战斗服务器和私有服务器A、B、C可认为是等价的关系,战斗服务器作为保底可用的一台服务器。
在一些实施例中,所述将游戏排期数据和游戏版本数据上传至所述第一数据库和所述第二数据库,根据所述数据中台的Vue组件,在所述第一前端生成可视化图形,具体包括:
安装Echarts库,并在第一Vue组件main.js中引入所述Echarts库;
创建第二Vue组件,在所述第二Vue组件内确定用于容纳图表的div容器,并设置第一函数;
在所述第一函数内根据所述div容器初始化Echarts实例以及设置option函数;
将游戏排期数据和游戏版本数据上传至所述第一数据库和所述第二数据库,根据所述数据中台调用所述游戏排期数据和所述游戏版本数据并存入所述option函数内,同时在所述option函数内确定图表类型;
根据mounted函数调用所述第一函数,在所述第一前端生成可视化图形。
该实施例中,Echarts是一款基于JavaScript的数据可视化图表库,可以从GitHub、NPM等平台获取,并在第一Vue组件main.js中引入所述Echarts库,其语句为
import echarts from'echarts'
Vue.prototype.$echarts=echarts
然后,可以在Vue项目里新建一个新的Vue文件,即第二Vue组件,在第二Vue组件内编写使用Echarts的代码。首先需要添加一个用于存放图表的div容器,比如一个高度为400px、宽度为600px的容器,其语句为
<div id="main"style="width:600px;height:400px;"></div>
然后,可以在第二Vue组件内添加一个用于初始化Echarts实例、配置图表参数和图表模板的第一函数,根据所述div容器初始化Echarts实例的语句为
var myChart=this.$echarts.init(document.getElementById('main'));
然后,在第一函数内添加option函数,可以从数据库内取出游戏排期数据和游戏版本数据并写入option函数内,指定图表的配置项和数据,并通过“myChart.setOption(option);”语句使用option函数,最后由钩子函数mounted调用第一函数,在第一前端生成可视化图形。
钩子函数mounted调用第一函数语句为
mounted(){
this.myEcharts();
}
参照图5,成员A、B、C和管理员A均可通过数据中台看到游戏排期数据,管理员A还可在数据中台上修改排期数据内容,数据中台也能通过广播服务器定时告知成员A、B、C和管理员A游戏排期的进展。参照图6,图6中采用了圆环图的模板可视化地呈现了游戏排期数据和游戏版本数据,能够让项目成员更直观地看到数据进度。
在一些实施例中,所述将数据配置表上传至所述第一数据库和所述第二数据库,基于所述数据中台和第一服务器检查所述数据配置表,具体包括:
将数据配置表上传至所述第一数据库和所述第二数据库,根据所述数据中台对所述数据配置表进行第一检查,所述第一检查包括表格名称检查、表格主键ID检查和表格误删检查;
由所述数据中台将所述数据配置表转发给第一服务器,根据所述第一服务器对所述数据配置表进行第二检查,并将所述第二检查的结果返回至所述数据中台,所述第二检查包括表格ID关联检查、表格映射关系检查、表格数据区间检查和表格类型检查;
基于所述数据中台,通过广播工具将所述第一检查的结果和所述第二检查的结果转发给管理人员。
该实施例中,游戏世界内的数值通常由策划所配置,其配置形式一般是csv表格或者excel表格等,纯文本由于其可读性较差已经很少使用。但是经过多次的追加或者拓展后,表格的数据可能变得非常的庞大,表格之间的耦合度也会大大提高,导致数据配置错误的可能性大大增加。而在游戏世界中,一个小小的数据错误往往可能带来非常严重的后果,因此尽量避免数值配置错误往往是游戏更新前的一个重要检查部分。庞大的数据藉由人工来进行检查显然是不合理的,数据中台便可以完美的胜任此工作。策划只需要将表格上传到数据中台,由数据中台分析处理后若发现错误则予以建议和预警,返还给策划进行再次修改。并且还可提供多种表格检查逻辑和策略以供策划选择,针对不同的表格或者不同的数据进行不同的处理分析,大大降低了表格配置的错误率,减少了人工检查所带来的耗时。
参照图7,针对数据配置表分为简单检查(第一检查)和复杂检查(第二检查)两次检查,数据中台只做基础的表格检查,例如表格是否在上个版本存在而新版本被删除了,表格中主键ID是否重复,表格名称是否异常等。进一步的复杂检查由具体的服务器——即第一服务器检查,检查后将结果同步给数据中台。之所以需要由第一服务器检查是由于有版本的限制,可能出现表格A在版本1中是对的,但是同样的检查方式在版本2中可能就是错误的,因为版本的迭代,往往检查规则也需要跟着修改。复杂检查应由版本自身控制,不应该由数据中台频繁地去修改适应版本,而在第一服务器内的检查规则包括:检查表格ID的关联,例如奖励表配置了一个道具作为奖励,那么这个道具在道具表就必须存在,不存在即为错误;区间检查,比如文中例子的活动区间不可重叠;类型检查,例如商店表不能配置代码没有定义的商店类型,类型不一致也是错误,诸如此类。之后,数据中台通过广播工具将简单检查和复杂检查的结果均发送给相关的管理人员。
在一些实施例中,所述将游戏GM指令的参数上传至所述第一数据库和所述第二数据库,基于所述数据中台通过http协议确定目标服务器执行所述游戏GM指令,具体包括:
为所述数据中台开放目标服务器的第一端口;
将游戏GM指令的参数上传至所述第一数据库和所述第二数据库,基于所述数据中台的Vue组件为所述游戏GM指令的参数生成对应的GM指令按钮,同时根据javadoc技术生成所述游戏GM指令的API文档,所述API文档包括所述游戏GM指令的使用方式和参数解释;
当所述GM指令按钮被触发时,基于所述数据中台将所述游戏GM指令的参数转换为http请求;
通过所述第一端口,根据所述数据中台将所述http请求发送至所述目标服务器,并由所述目标服务器响应所述http请求。
该实施例中,游戏中的GM指令是指可以在游戏中进行一些特殊操作的指令,比如获取积分,提升属性,快速升级等,根据某种需要使用相关的特殊指令,而不需要在游戏中慢慢体验达成某一目标,这样的话对于测试来说,会方便很多,也是测试工作中必不可少的。传统的游戏项目提供GM指令一般是在Unity或者Cocos2dx等客户端内输入使用,一定程度上是需要前端来配合开发的。参照图8,将GM指令移植到数据平台后,测试人员只需要在平台上使用这些GM命令,便可以像本地操作一样快速地完成游戏目标,十分的便捷。数据平台还提供这些GM指令的使用方式和参数解释,便于测试进行查询和使用。
数据中台将GM指令参数转化为http请求,目标服务器开放一个端口给数据中台使用,其他拓展包括将一些常用的GM指令按钮化,一些复杂的GM指令简单化。常用的GM指令用户可以不用输入内容,直接点击按钮即可。复杂的指令也提供了一些指引,比如有选项可以选择,减少输入错误。另外由于使用数据中台来执行GM是可以选择目标服务器的,也就是说可以在自己以外的服务器执行GM指令,提供了一种远程查找问题的方式。
本实施例根据javadoc技术生成所述游戏GM指令的API文档,所述API文档包括所述游戏GM指令的使用方式和参数解释,Javadoc可以从程序源代码中抽取类、方法、成员等注释,然后形成一个和源代码配套的API帮助文档。也就是说,只要在编写程序时以一套特定的标签注释,在程序编写完成后,通过Javadoc就形成了程序的API帮助文档。因此,需要在编写代码的时候,在代码中添加以/**开头、以*/结尾的注释,并在注释中加入@author、@since等标签或HTML修饰符,这样才能通过Javadoc形成关于游戏GM指令的使用方式和参数解释的API文档。
参照图9,本发明实施例还提供了一种基于数据中台的游戏管理装置9,所述装置9具体包括:搭建模块901,用于根据Spring Boot、Vue、Spring Security和JWT分别搭建第一后端、第一前端和权限管理模块,配置第一数据库和第二数据库,生成数据中台,所述第一数据库为MySQL数据库,所述第二数据库为Redis数据库;管理模块902,用于将游戏数据上传至所述第一数据库和所述第二数据库,基于所述数据中台管理所述游戏数据,并根据多个辅助工具实现多样化游戏管理功能。
可以理解的是,如图1所示的基于数据中台的游戏管理方法实施例中的内容均适用于本基于数据中台的游戏管理装置实施例中,本基于数据中台的游戏管理装置实施例所具体实现的功能与如图1所示的基于数据中台的游戏管理方法实施例相同,并且达到的有益效果与如图1所示的基于数据中台的游戏管理方法实施例所达到的有益效果也相同。
需要说明的是,上述装置之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
参照图10,本发明实施例还提供了一种计算机设备10,包括:存储器1002和处理器1001及存储在存储器1002上的计算机程序1003,当所述计算机程序1003在处理器1001上被执行时,实现如上述方法中任一项所述的基于数据中台的游戏管理方法。
所述计算机设备10可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该计算机设备可包括,但不仅限于,处理器1001、存储器1002。本领域技术人员可以理解,图10仅仅是计算机设备10的举例,并不构成对计算机设备10的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
所称处理器1001可以是中央处理单元(Central Processing Unit,CPU),该处理器1001还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器1002在一些实施例中可以是所述计算机设备10的内部存储单元,例如计算机设备10的硬盘或内存。所述存储器1002在另一些实施例中也可以是所述计算机设备10的外部存储设备,例如所述计算机设备10上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器1002还可以既包括所述计算机设备10的内部存储单元也包括外部存储设备。所述存储器1002用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器1002还可以用于暂时地存储已经输出或者将要输出的数据。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时实现如上述方法中任一项所述的基于数据中台的游戏管理方法。
该实施例中,所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所公开的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
Claims (9)
1.一种基于数据中台的游戏管理方法,其特征在于,所述方法具体包括:
根据Spring Boot、Vue、Spring Security和JWT分别搭建第一后端、第一前端和权限管理模块,配置第一数据库和第二数据库,生成数据中台,所述第一数据库为MySQL数据库,所述第二数据库为Redis数据库;
将游戏数据上传至所述第一数据库和所述第二数据库,基于所述数据中台管理所述游戏数据,并根据多个辅助工具实现多样化游戏管理功能;
其中,所述将游戏数据上传至第一数据库和第二数据库,基于所述数据中台管理所述游戏数据,并根据多个辅助工具实现多样化游戏管理功能,具体包括:
将游戏排期数据和游戏版本数据上传至所述第一数据库和所述第二数据库,根据所述数据中台的Vue组件,在所述第一前端生成可视化图形;
将数据配置表上传至所述第一数据库和所述第二数据库,基于所述数据中台和第一服务器检查所述数据配置表;
将游戏GM指令的参数上传至所述第一数据库和所述第二数据库,基于所述数据中台通过http协议确定目标服务器执行所述游戏GM指令;
将配置跨服环境参数上传至所述第一数据库和所述第二数据库,连接所述数据中台和跨服服务器,根据所述数据中台通过所述跨服服务器转发所述配置跨服环境参数至游戏服务器集合;
将战斗模拟参数上传至所述第一数据库和所述第二数据库,连接所述数据中台和战斗服务器,根据所述数据中台将所述战斗模拟参数转发至所述战斗服务器,并由所述数据中台分析所述战斗服务器返回的战斗结果。
2.根据权利要求1所述的方法,其特征在于,所述根据Spring Boot、Vue、SpringSecurity和JWT分别搭建第一后端、第一前端和权限管理模块,配置第一数据库和第二数据库,生成数据中台,具体包括:
创建第一数据库和第二数据库,所述第一数据库为MySQL数据库,所述第二数据库为Redis数据库;
根据IDEA创建Spring Boot项目,生成第一后端,并所述第一后端的application.properties文件中写入数据库连接配置,连接所述第一后端和所述第一数据库;
根据Node.js安装Vue-cli,然后使用命令行创建Vue项目,生成第一前端,连接所述第一前端和所述第二数据库;
在所述第一前端内插入axios插件,并在第一Vue组件main.js中引入所述axios插件,实现所述第一前端和所述第一后端的数据交互;
将Spring Security依赖包导入所述第一后端,生成Spring Security组件,然后根据所述Spring Security组件实现JWT认证,生成权限管理模块。
3.根据权利要求2所述的方法,其特征在于,所述根据所述Spring Security组件实现JWT认证,具体包括:
根据所述第一前端向所述第一后端发送第一登录请求,所述第一登录请求包括第一用户的ID和密码;
基于所述第一后端响应所述第一登录请求,根据第一Spring Security组件UserDetialsService从所述第一数据库内提取所述第一用户的信息数据,并根据第二Spring Security组件AuthenticationManager判定所述第一用户的ID和密码均正确;
基于JWT技术将所述第一用户的信息数据编码成token字符串,然后将所述token字符串发送至所述第一前端,并根据所述第一前端将所述token字符串存入所述第二数据库;
当所述第一前端向所述第一后端发送第二登录请求时,根据所述第一前端从所述第二数据库内提取所述token字符串并存入所述第二登录请求的Authorization属性中;
基于第三Spring Security组件FilterSecurityInterceptor判定所述token字符串有效,向所述第一前端返回登录成功结果。
4.根据权利要求1所述的方法,其特征在于,所述将游戏排期数据和游戏版本数据上传至所述第一数据库和所述第二数据库,根据所述数据中台的Vue组件,在所述第一前端生成可视化图形,具体包括:
安装Echarts库,并在第一Vue组件main.js中引入所述Echarts库;
创建第二Vue组件,在所述第二Vue组件内确定用于容纳图表的div容器,并设置第一函数;
在所述第一函数内根据所述div容器初始化Echarts实例以及设置option函数;
将游戏排期数据和游戏版本数据上传至所述第一数据库和所述第二数据库,根据所述数据中台调用所述游戏排期数据和所述游戏版本数据并存入所述option函数内,同时在所述option函数内确定图表类型;
根据mounted函数调用所述第一函数,在所述第一前端生成可视化图形。
5.根据权利要求1所述的方法,其特征在于,所述将数据配置表上传至所述第一数据库和所述第二数据库,基于所述数据中台和第一服务器检查所述数据配置表,具体包括:
将数据配置表上传至所述第一数据库和所述第二数据库,根据所述数据中台对所述数据配置表进行第一检查,所述第一检查包括表格名称检查、表格主键ID检查和表格误删检查;
由所述数据中台将所述数据配置表转发给第一服务器,根据所述第一服务器对所述数据配置表进行第二检查,并将所述第二检查的结果返回至所述数据中台,所述第二检查包括表格ID关联检查、表格映射关系检查、表格数据区间检查和表格类型检查;
基于所述数据中台,通过广播工具将所述第一检查的结果和所述第二检查的结果转发给管理人员。
6.根据权利要求1所述的方法,其特征在于,所述将游戏GM指令的参数上传至所述第一数据库和所述第二数据库,基于所述数据中台通过http协议确定目标服务器执行所述游戏GM指令,具体包括:
为所述数据中台开放目标服务器的第一端口;
将游戏GM指令的参数上传至所述第一数据库和所述第二数据库,基于所述数据中台的Vue组件为所述游戏GM指令的参数生成对应的GM指令按钮,同时根据javadoc技术生成所述游戏GM指令的API文档,所述API文档包括所述游戏GM指令的使用方式和参数解释;
当所述GM指令按钮被触发时,基于所述数据中台将所述游戏GM指令的参数转换为http请求;
通过所述第一端口,根据所述数据中台将所述http请求发送至所述目标服务器,并由所述目标服务器响应所述http请求。
7.一种基于数据中台的游戏管理装置,其特征在于,所述装置具体包括:
搭建模块,用于根据Spring Boot、Vue、Spring Security和JWT分别搭建第一后端、第一前端和权限管理模块,配置第一数据库和第二数据库,生成数据中台,所述第一数据库为MySQL数据库,所述第二数据库为Redis数据库;
管理模块,用于将游戏数据上传至所述第一数据库和所述第二数据库,基于所述数据中台管理所述游戏数据,并根据多个辅助工具实现多样化游戏管理功能;
其中,所述将游戏数据上传至第一数据库和第二数据库,基于所述数据中台管理所述游戏数据,并根据多个辅助工具实现多样化游戏管理功能,具体包括:
将游戏排期数据和游戏版本数据上传至所述第一数据库和所述第二数据库,根据所述数据中台的Vue组件,在所述第一前端生成可视化图形;
将数据配置表上传至所述第一数据库和所述第二数据库,基于所述数据中台和第一服务器检查所述数据配置表;
将游戏GM指令的参数上传至所述第一数据库和所述第二数据库,基于所述数据中台通过http协议确定目标服务器执行所述游戏GM指令;
将配置跨服环境参数上传至所述第一数据库和所述第二数据库,连接所述数据中台和跨服服务器,根据所述数据中台通过所述跨服服务器转发所述配置跨服环境参数至游戏服务器集合;
将战斗模拟参数上传至所述第一数据库和所述第二数据库,连接所述数据中台和战斗服务器,根据所述数据中台将所述战斗模拟参数转发至所述战斗服务器,并由所述数据中台分析所述战斗服务器返回的战斗结果。
8.一种计算机设备,其特征在于,包括:存储器和处理器及存储在存储器上的计算机程序,当所述计算机程序在处理器上被执行时,实现如权利要求1至6中任一项所述的基于数据中台的游戏管理方法。
9.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器运行时实现如权利要求1至6中任一项所述的基于数据中台的游戏管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310228248.2A CN116212398B (zh) | 2023-03-10 | 2023-03-10 | 一种基于数据中台的游戏管理方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310228248.2A CN116212398B (zh) | 2023-03-10 | 2023-03-10 | 一种基于数据中台的游戏管理方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116212398A CN116212398A (zh) | 2023-06-06 |
CN116212398B true CN116212398B (zh) | 2023-11-03 |
Family
ID=86585454
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310228248.2A Active CN116212398B (zh) | 2023-03-10 | 2023-03-10 | 一种基于数据中台的游戏管理方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116212398B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105229967A (zh) * | 2014-02-28 | 2016-01-06 | 华为技术有限公司 | 全局主节点和域主节点、指示建立流及建立流的方法 |
CN111756738A (zh) * | 2020-06-24 | 2020-10-09 | 昆明东电科技有限公司 | 快速构建Web应用的系统框架、数据处理方法及系统 |
CN112190938A (zh) * | 2020-10-15 | 2021-01-08 | 顾春健 | 基于数据分析和动态渲染的游戏画面处理方法及游戏平台 |
CN112433726A (zh) * | 2020-12-04 | 2021-03-02 | 上海悦易网络信息技术有限公司 | 一种Echarts图表组件的封装方法及设备 |
CN113742676A (zh) * | 2021-09-13 | 2021-12-03 | 北京锐安科技有限公司 | 一种登录管理方法、装置、服务器、系统及存储介质 |
CN113783695A (zh) * | 2021-08-03 | 2021-12-10 | 西北大学 | 一种微服务架构的客户端信息认证方法及系统 |
CN113971506A (zh) * | 2021-09-22 | 2022-01-25 | 民生轮船股份有限公司 | 基于大数据的整车物流信息智能管理平台 |
CN114546364A (zh) * | 2022-02-23 | 2022-05-27 | 徐工汉云技术股份有限公司 | 一种可视化图表组件的配置方法 |
-
2023
- 2023-03-10 CN CN202310228248.2A patent/CN116212398B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105229967A (zh) * | 2014-02-28 | 2016-01-06 | 华为技术有限公司 | 全局主节点和域主节点、指示建立流及建立流的方法 |
CN111756738A (zh) * | 2020-06-24 | 2020-10-09 | 昆明东电科技有限公司 | 快速构建Web应用的系统框架、数据处理方法及系统 |
CN112190938A (zh) * | 2020-10-15 | 2021-01-08 | 顾春健 | 基于数据分析和动态渲染的游戏画面处理方法及游戏平台 |
CN112433726A (zh) * | 2020-12-04 | 2021-03-02 | 上海悦易网络信息技术有限公司 | 一种Echarts图表组件的封装方法及设备 |
CN113783695A (zh) * | 2021-08-03 | 2021-12-10 | 西北大学 | 一种微服务架构的客户端信息认证方法及系统 |
CN113742676A (zh) * | 2021-09-13 | 2021-12-03 | 北京锐安科技有限公司 | 一种登录管理方法、装置、服务器、系统及存储介质 |
CN113971506A (zh) * | 2021-09-22 | 2022-01-25 | 民生轮船股份有限公司 | 基于大数据的整车物流信息智能管理平台 |
CN114546364A (zh) * | 2022-02-23 | 2022-05-27 | 徐工汉云技术股份有限公司 | 一种可视化图表组件的配置方法 |
Non-Patent Citations (1)
Title |
---|
基于前后端分离技术的web开发框架设计;吴昌政;中国优秀硕士学位论文全文数据库(基础科学辑)(第2021年第03期期);第20-126页 * |
Also Published As
Publication number | Publication date |
---|---|
CN116212398A (zh) | 2023-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105849691B (zh) | 用于代码虚拟化和远程进程调用生成的方法和装置 | |
US9465718B2 (en) | Filter generation for load testing managed environments | |
Hope et al. | Web security testing cookbook: systematic techniques to find problems fast | |
CN111078554B (zh) | 一种小程序调试方法、装置、设备及存储介质 | |
Pacheco | Microservice Patterns and Best Practices: Explore patterns like CQRS and event sourcing to create scalable, maintainable, and testable microservices | |
US10250721B2 (en) | System and method for testing applications with a load tester and testing translator | |
Felício et al. | Rapitest: Continuous black-box testing of restful web apis | |
WO2014132145A1 (en) | Web service black box testing | |
Tuovenen et al. | MAuto: Automatic mobile game testing tool using image-matching based approach | |
US20070092069A1 (en) | Method and system for testing enterprise applications | |
CN108228312A (zh) | 通过解释器执行代码的系统和方法 | |
CN116212398B (zh) | 一种基于数据中台的游戏管理方法、装置、设备及介质 | |
CN110007932A (zh) | 一种基于局域网大数据处理系统自动部署的方法 | |
Buelta | Hands-On Docker for Microservices with Python: Design, deploy, and operate a complex system with multiple microservices using Docker and Kubernetes | |
CN114253814A (zh) | 游戏服务器压力测试方法及装置 | |
Hung et al. | Continuous Integration for Android Application Development and Training | |
Queinnec | An infrastructure for mechanised grading | |
Neeft | models help testers finding bugs? | |
Chhetri | Web page development using the rails framework | |
Popovici et al. | Report Companion: Data driven reporting in radiology | |
Nguyen | Design and implementation of a full stack React and Node. js application: simulating driver’s license exams | |
Tajik et al. | Swift vs React Native: A performance comparison for automatization of gamification using QR-codes | |
Azad | Protecting Web Applications Via Software Debloating | |
Abad García | Online penetration testing laboratory | |
CN118567745A (zh) | 一种Vue项目配置方法、装置、电子设备及存储介质 |
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 |