CN109248440B - 一种实现游戏实时动态加载配置的方法及系统 - Google Patents

一种实现游戏实时动态加载配置的方法及系统 Download PDF

Info

Publication number
CN109248440B
CN109248440B CN201810800471.9A CN201810800471A CN109248440B CN 109248440 B CN109248440 B CN 109248440B CN 201810800471 A CN201810800471 A CN 201810800471A CN 109248440 B CN109248440 B CN 109248440B
Authority
CN
China
Prior art keywords
configuration file
configuration
file
game server
notification message
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
Application number
CN201810800471.9A
Other languages
English (en)
Other versions
CN109248440A (zh
Inventor
吴健
宋大伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Friendship time Technology Co.,Ltd.
Original Assignee
Suzhou Playing Friends Era Polytron Technologies Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Playing Friends Era Polytron Technologies Inc filed Critical Suzhou Playing Friends Era Polytron Technologies Inc
Priority to CN201810800471.9A priority Critical patent/CN109248440B/zh
Publication of CN109248440A publication Critical patent/CN109248440A/zh
Application granted granted Critical
Publication of CN109248440B publication Critical patent/CN109248440B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/77Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/352Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/50Features 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/51Server architecture
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/50Features 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/55Details of game data or player data management
    • A63F2300/552Details of game data or player data management for downloading to client devices, e.g. using OS version, hardware or software profile of the client device

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了一种实现游戏实时动态加载配置的方法及系统,所述方法包括管理配置系统获取配置信息并生成配置文件和配置文件映射表,所述配置文件映射表用于记录配置文件与游戏服务器的对应关系;根据所述配置文件映射表,将配置文件分发至分布式文件系统;向分发成功的配置文件对应的目标游戏服务器发布第一通知消息;所述目标游戏服务器根据所述第一通知消息向分布式文件系统拉取配置文件,根据所述配置文件选择目标游戏客户端,并向所述目标游戏客户端发布第二通知消息;所述目标游戏客户端根据所述第二通知消息向分布式文件系统拉取配置文件。本发明能够实现对于多种游戏服务器配置文件的动态加载,也能够实现游戏客户端配置文件的动态加载。

Description

一种实现游戏实时动态加载配置的方法及系统
技术领域
本发明涉及计算机领域,尤其涉及一种实现游戏实时动态加载配置的方法及系统。
背景技术
对于大型游戏配置的加载,现有的方式主要有三种:
(1)将相关配置规则条件等内容事先配置好,并放置到游戏客户端的资源文件中,连同游戏一起打包上架到应用商店。
(2)不做相关配置化管理,但针对游戏活动等个别功能,被动式地等游戏活动结束后,在管理系统中的游戏活动统计功能里做手动统计满足相关活动条件的玩家,手动给这批玩家发送奖励。
(3)对游戏服务器进行统一升级维护,在维护过程中需要暂停服务。
第一种方式每次添加一些动态配置都需要更新客户端版本包,并且在大型游戏中往往需要依托游戏服务器集群,针对不同游戏服务器有不同配置的需求,使用第一种方式难以实现。第二种方式及时性很低,玩家只能在活动结束后才能领到奖励,并且很消耗人力,难以实现动态配置。第三种方式需要暂停服务,影响用户体验。
发明内容
为了解决上述技术问题,本发明提出了一种实现游戏实时动态加载配置的方法及系统。本发明具体是以如下技术方案实现的:
第一方面,一种实现游戏实时动态加载配置的方法,包括:
管理配置系统获取配置信息并生成配置文件和配置文件映射表,所述配置文件映射表用于记录配置文件与游戏服务器的对应关系;根据所述配置文件映射表,将配置文件分发至分布式文件系统;向分发成功的配置文件对应的目标游戏服务器发布第一通知消息;
所述目标游戏服务器根据所述第一通知消息向分布式文件系统拉取配置文件,根据所述配置文件选择目标游戏客户端,并向所述目标游戏客户端发布第二通知消息;
所述目标游戏客户端根据所述第二通知消息向分布式文件系统拉取配置文件。
第二方面,一种实现游戏实时动态加载配置的系统,包括管理配置系统、分布式文件系统、游戏服务器和游戏客户端:
所述管理配置系统用于获取配置信息并生成配置文件和配置文件映射表,所述配置文件映射表用于记录配置文件与游戏服务器的对应关系;根据所述配置文件映射表,将配置文件分发至分布式文件系统;向分发成功的配置文件对应的目标游戏服务器发布第一通知消息;
所述目标游戏服务器用于根据所述第一通知消息向分布式文件系统拉取配置文件,根据所述配置文件选择目标游戏客户端,并向所述目标游戏客户端发布第二通知消息;
所述目标游戏客户端用于根据所述第二通知消息向分布式文件系统拉取配置文件。
第三方面,一种计算机可读存储介质,用于存储程序,所述程序用于实现上述一种实现游戏实时动态加载配置的方法。
本发明提供了一种实现游戏实时动态加载配置的方法及系统,具备下述有益效果:
本发明能够实现对于多种游戏服务器配置文件的动态加载,也能够实现游戏客户端配置文件的动态加载。并且本发明通过设计由管理配置系统、分布式文件系统、游戏服务器和游戏客户端构成的系统,优化文件传输路径和文件传输方法提升了配置文件的加载速度,保证用户对于本发明实施例中的配置文件的传输和动态加载过程是全程无感知的,并且能够及时的获得游戏体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1是本发明实施例提供的一种实现游戏实时动态加载配置的方法实施环境示意图;
图2是本发明实施例提供的一种实现游戏实时动态加载配置的方法流程图;
图3是本发明实施例提供的一种可视化的配置文件自动生成方法流程图;
图4是本发明实施例提供的内容分发集群发布配置文件方法流程图;
图5是本发明实施例提供的第一通知消息管理方法流程图;
图6是本发明实施例提供的一种实现游戏实时动态加载配置的系统框图;
图7是本发明实施例提供的管理配置系统框图;
图8是本发明实施例提供的内容分发集群框图;
图9是本发明实施例提供的管理配置系统另一部分框图;
图10是本发明实施例提供的服务器结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
参见图1,本发明实施例提供了一种实现游戏实时动态加载配置的方法的实施环境示意图。该实施环境包括:管理配置系统101、分布式文件系统102、游戏服务器103和游戏客户端104。
其中,游戏客户端104用于从应用商店、网页链接或其它可行的渠道中下载游戏、安装游戏以及运行游戏。在游戏被下载、安装以及运行的过程中,所述游戏客户端104能够与所述游戏服务器103以及分布式文件系统102通过无线网络或者有线网络进行通信。
管理配置系统101用于进行游戏配置、生成并管理配置文件。所述分布式文件系统102用于存储配置文件。
所述游戏服务器103可以是单独的游戏服务器也可以是分布式游戏服务器集群,所述游戏服务器103与所述分布式文件系统102均与所述管理配置系统101通过无线网络或者有线网络通信。
参见图2,本发明实施例提供一种实现游戏实时动态加载配置的方法,所述方法的执行主体为管理配置系统、分布式文件系统、游戏服务器和游戏客户端构成的系统,所述方法包括:
S101.管理配置系统获取配置信息并生成配置文件和配置文件映射表,所述配置文件映射表用于记录配置文件与游戏服务器的对应关系;根据所述配置文件映射表,将配置文件分发至分布式文件系统;向分发成功的配置文件对应的目标游戏服务器发布第一通知消息。
所述配置文件可以用于为游戏客户端展示最新的内容、奖励或者其他可控制游戏客户端界面的一些UI,按钮或功能。所述配置文件还可以应用于为游戏服务器配置活动、奖励的相关规则。
比如在管理配置系统将游戏的实时活动配置并同步到分布式文件系统后,在游戏服务器获取该实时活动配置后,判断玩家是否符合相关游戏内任务或者既定的规则条件,若是,可以触发游戏客户端呈现领取奖励控件或提供查看隐藏的活动按钮功能等。
当玩家在游戏内体验相关功能时,游戏客户端会通知游戏服务端,游戏服务端根据玩家当前的游戏数据和配置文件来判定玩家是否达成了指定的条件,达成条件后,玩家可以进行下一步相关操作(比如达成活动要求,可点击按钮领取相应奖励;到达指定等级可显示游戏相关系统功能按钮,体验更多的功能等)。
再比如,某个节目需要上线一些新的功能按钮,也可通过这样的动态配置文件实现开关定制。提前将相关动态功能配置好,同步给游戏服务器。到点的时候,游戏服务器会根据配置文件的规则自动开启相关功能。
S102.所述目标游戏服务器根据所述第一通知消息向分布式文件系统拉取配置文件,根据所述配置文件选择目标游戏客户端,并向所述目标游戏客户端发布第二通知消息。
S103.所述目标游戏客户端根据所述第二通知消息向分布式文件系统拉取配置文件。
通常情况下,游戏配置由游戏运维人员完成,而游戏运维人员并非专业的技术人员,也无法直接编写配置文件,因此还需要游戏开发人员进行参与,加大了游戏配置的难度,因此,本发明实施例提供一种可视化的配置文件自动生成的技术方案。
具体地,本发明实施例管理配置系统提供人机交互界面,所述人机交互界面包括规则编辑区、控件编辑区、游戏服务器条件编辑区和游戏客户端条件编辑区。所述规则编辑区用于编辑游戏活动的相关规则,所述控件编辑区用于编辑在游戏客户端需要被显示的控件及其内容,所述游戏服务器条件编辑区用于设定接收配置文件的游戏服务器的条件,所述游戏客户端条件编辑区用于设定参与游戏活动的游戏客户端的条件。
默认情况下,游戏服务器条件编辑区和游戏客户端条件编辑区可以采用缺省设置,即若不进行特别设计,配置文件可以适用于全部游戏服务器和游戏客户端。
为了便于说明,本发明实施例中将所述规则编辑区获取的数据称之为第一数据、将控件编辑区获取的数据称之为第二数据、将游戏服务器条件编辑区获取的数据称之为第三数据、将游戏客户端条件编辑区获取的数据称之为第四数据。
本发明实施例管理配置系统执行下述操作,如图3所示:
S1011.响应于自动配置指令,获取第一数据、第二数据、第三数据和第四数据。
S1012.根据第一数据、第二数据和第四数据生成配置文件。
S1013.根据第三数据获取目标游戏服务器集合。
S1014.建立所述配置文件与所述目标游戏服务器集合中各个游戏服务器的对应关系,并将所述对应关系存入配置文件映射表。
若需要进行多种配置,则游戏运维人员可以发布多条自动配置指令,每发布一次自动配置指令,即可得到一个配置文件和一个配置文件映射表;配置文件映射表记录了配置文件标识与游戏服务器标识的对应关系;若需要进行多种配置,还需要对于得到的多个配置文件配置表进行合并。比如:
根据第一次的自动配置指令得到的配置文件映射表为:
配置文件标识 游戏服务器标识
AECD01 010003
AECD01 010004
根据第二次的自动配置指令得到的配置文件映射表为:
配置文件标识 游戏服务器标识
AECD02 010003
AECD02 010005
则对于上述两配置文件映射表的合并结果为:
配置文件标识 游戏服务器标识
AECD01 010003
AECD01 010004
AECD02 010003
AECD02 010005
在步骤101中,根据合并后配置文件映射表将各个配置文件分发至分布式文件系统。本发明实施例中分布式文件系统中的各个分布式节点与游戏服务器标识存在对应关系,根据配置文件映射表中的游戏服务器标识获取其对应的目标节点,并将配置文件标识对应的配置文件传输至所述目标节点。
在大型联机游戏中,通常需要使用游戏服务器集群为游戏客户端提供游戏服务,而游戏服务器集群中的各个游戏服务器均可能需要获取配置文件,因此,为了确保各个游戏服务器均能够准确的为游戏客户端进行服务,当需要进行相关配置时,需要暂停服务并为各个游戏服务器设置配置文件,而造成停服的原因在于为各个游戏服务器设置配置文件需要较长的时间。为了不影响游戏服务器正常向外提供游戏服务,并且缩短游戏服务器获取配置文件的时间,本发明实施例公开了一种内容分发集群,所述内容分发集群用于在所述配置管理系统和所述分布式文件系统的相关节点之间建立路由通道,从而将配置文件以多线程高并发的形式发送至分布式文件系统,从而缩短配置时间。
所述内容分发集群还用于监控配置文件的分发结果,并将分发结果反馈至所述管理配置系统。
所述内容分发集群执行下述操作,如图4所示:
S1.根据配置文件映射表获取文件传输记录表,所述文件传输记录表用于记录目标节点与所述目标节点需要接收的配置文件之间的对应关系。
为了便于举例,分布式文件系统的节点与游戏服务器一一对应,其相对应的节点与游戏服务器的标识也是一致的。则上述和配置文件映射表对应的文件传输记录表可以表示为下表的结构:
分布式文件系统中的节点 需要接收的配置文件标识
010003 AECD01、AECD02
010004 AECD01
010005 AECD02
S2.根据所述文件传输记录表按照并发方式向目标节点传输其需要接收的配置文件。
本发明实施例进一步公开了向目标节点并发传输文件的方法,包括:
S21.获取目标节点的在网络中的状态信息,并得到可用网络队列Q_Net。
对于各个可用网络,根据公式C=W·log(1+SNR)计算目标节点在该可用网络中的链路信号状态,其中C标识链路状态,W标识网络带宽,SNR标识信噪比。假设目标节点处在M个可用网络环境中,将目标节点的多个可用网络按照链路数据传输率从小到大依次排序:HN1,HN2,...,HNM,并依次将M个可用网络入队列Q_Net。
S22.将各个目标节点需要接受的配置文件按照由小到大的顺序排序,得到文件队列Q_File。
假设共有N个文件,从小到大排序依次为:File1,File2,...,FileN,我们这里用最小优先调度策略,将文件按照文件大小从小到大进行排序,排好序的文件依次入队列Q_File。
S23.按照可用网络队列Q_Net和文件队列Q_File的数量关系,多条链路同时进行并发传输数据。
若N=M,就按照两个排好顺序的队列,依次弹出队头进行匹配传输;若N<m,即首先将可用网络入队列Q_Net弹出前(m-n)项,然后,再同时从可用网络入队列Q_Net和文件队列Q_File弹出队头进行匹配下载传输;N>M,则同时从可用网络入队列Q_Net和文件队列Q_File弹出队头,进行匹配下载传输,直到网络入队列Q_Net为空;剩下的配置文件的传输过程依然遵循步骤S21-S23。
为了及时通知游戏服务器拉取存储于分布式文件系统中的配置文件,本发明实施例进一步公开了第一通知消息管理方法,所述第一通知消息管理方法的执行主体为管理配置系统,所述方法如图5所示,包括:
S10.获取配置文件的分发结果,记录配置文件的分发状态。
S20.根据所述分发状态生成第一通知消息,并将所述第一通知消息压入任务队列。
S30.按照预设规则从所述任务队列中弹出排在队首的第一通知消息,并将所述第一通知消息传输至目标游戏服务器以便于所述目标游戏服务器向分布式文件系统拉取所述配置文件。
具体地,所述预设规则可以根据具体需要进行设定,比如每隔五分钟弹出一次。游戏服务器接收到第一通知消息后,会自行到分布式文件系统获取最新的配置文件并加载解析。
游戏服务器频繁向分布式文件系统拉取配置文件会降低游戏服务器的运行效率,同时造成不必要的资源消耗,为了降低游戏服务器的负荷并且及时将配置文件传输至游戏服务器,本发明实施例中使用了任务队列进行通知消息的优化。
当配置文件被成功分发至分布式文件系统后,并不会立刻引发游戏服务器对配置文件的下载,而是按照预设规则集中将第一通知消息发送至目标游戏服务器。
在一种优选的实施方式中,步骤S30之前,还包括对任务队列中的第一通知消息进行整理优化的步骤:
提取第一通知消息与目标游戏服务器之间的对应关系,所述目标游戏服务器为用于接收第一通知消息的游戏服务器;
将目标游戏服务器相同的第一通知消息进行合并得到合并后的第一通知消息。
经过上述优化步骤之后,从所述任务队列中弹出的就是优化后的第一通知消息,则目标服务器接收到的第一通知消息中可以包括多条内容,从而一次性拉取多个配置文件,节省了游戏服务器的资源。
在游戏服务器获取配置文件之后,可以根据配置文件的具体内容选择符合配置文件要求的目标游戏客户端,并向所述目标游戏客户端发布第二通知消息,以便于所述目标游戏客户端根据所述第二通知消息向分布式文件系统拉取配置文件。游戏客户端可以根据配置文件,展示不一样的页面效果。比如,当有用户完成某个游戏的体验操作(比如升级,充值,消费等),游戏客户端会根据游戏服务器端的验证配置结果反馈,展现不同的效果(比如显示某个活动图标,可领取奖励按钮,可体验其他的新的游戏副本等),而用户对于本发明实施例中的配置文件的传输和动态加载过程是全程无感知的,并且能够及时的获得游戏体验。
本发明实施例公开了一种实现游戏实时动态加载配置的系统,如图6所示,包括管理配置系统201、分布式文件系统202、游戏服务器203和游戏客户端204;
所述管理配置系统201用于获取配置信息并生成配置文件和配置文件映射表,所述配置文件映射表用于记录配置文件与游戏服务器的对应关系;根据所述配置文件映射表,将配置文件分发至分布式文件系统202;向分发成功的配置文件对应的目标游戏服务器发布第一通知消息;
所述目标游戏服务器203用于根据所述第一通知消息向分布式文件系统202拉取配置文件,根据所述配置文件选择目标游戏客户端204,并向所述目标游戏客户端204发布第二通知消息;
所述目标游戏客户端204用于根据所述第二通知消息向分布式文件系统202拉取配置文件。
还包括内容分发集群205,所述内容分发集群用于根据配置文件映射表获取文件传输记录表,所述文件传输记录表用于记录目标节点与所述目标节点需要接收的配置文件之间的对应关系;根据所述文件传输记录表按照并发方式向目标节点传输其需要接收的配置文件。
如图7所示,所述管理配置系统201包括:
数据获取模块2011,用于响应于自动配置指令,获取第一数据、第二数据、第三数据和第四数据;
配置文件生成模块2012,用于根据第一数据、第二数据和第四数据生成配置文件;
目标游戏服务器集合获取模块2013,用于根据第三数据获取目标游戏服务器集合;
配置文件映射表获取模块2014,用于建立所述配置文件与所述目标游戏服务器集合中各个游戏服务器的对应关系,并将所述对应关系存入配置文件映射表。
如图8所示,所述内容分发集群205包括:
可用网络队列获取模块2051,用于获取目标节点的在网络中的状态信息,并得到可用网络队列Q_Net;
文件队列获取模块2052,用于将各个目标节点需要接受的配置文件按照由小到大的顺序排序,得到文件队列Q_File;
并发传输模块2053,用于按照可用网络队列Q_Net和文件队列Q_File的数量关系,多条链路同时进行并发传输数据。
如图9所示,所述管理配置系统201还包括:
分发状态获取模块2015,用于获取配置文件的分发结果,记录配置文件的分发状态;
消息压入模块2016,用于根据所述分发状态生成第一通知消息,并将所述第一通知消息压入任务队列;
通知模块2017,用于按照预设规则从所述任务队列中弹出排在队首的第一通知消息,并将所述第一通知消息传输至目标游戏服务器以便于所述目标游戏服务器向分布式文件系统拉取所述配置文件。
本发明的装置实施例中所述的一种实现游戏实时动态加载配置的系统与方法实施例基于同样地发明构思。
本发明的实施例还提供了一种存储介质,所述存储介质可用于保存用于实现实施例中需要用到的的程序代码。可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络设备中的至少一个网络设备。可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
具体地,图10是本发明实施例提供的一种服务器结构示意图,所述服务器结构可以用于运行一种实现游戏实时动态加载配置的系统。该服务器800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)822(例如,一个或一个以上处理器)和存储器832,一个或一个以上存储应用程序842或数据844的存储介质830(例如一个或一个以上海量存储设备)。其中,存储器832和存储介质830可以是短暂存储或持久存储。存储在存储介质830的程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器822可以设置为与存储介质830通信,在服务器800上执行存储介质830中的一系列指令操作。服务器800还可以包括一个或一个以上电源826,一个或一个以上有线或无线网络接口850,一个或一个以上输入输出接口858,和/或,一个或一个以上操作系统841,例如WindowsServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。上述方法实施例所执行的步骤可以基于该图10所示的服务器结构。
需要说明的是:上述本发明实施例的先后顺序仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种实现游戏实时动态加载配置的方法,其特征在于,包括:
管理配置系统获取配置信息并生成配置文件和配置文件映射表,所述配置文件映射表用于记录配置文件与游戏服务器的对应关系;根据所述配置文件映射表,将配置文件分发至分布式文件系统;向分发成功的配置文件对应的目标游戏服务器发布第一通知消息;
所述目标游戏服务器根据所述第一通知消息向分布式文件系统拉取配置文件,根据所述配置文件选择目标游戏客户端,并向所述目标游戏客户端发布第二通知消息;
所述目标游戏客户端根据所述第二通知消息向分布式文件系统拉取配置文件;
还包括:内容分发集群根据配置文件映射表获取文件传输记录表,所述文件传输记录表用于记录目标节点与所述目标节点需要接收的配置文件之间的对应关系;根据所述文件传输记录表按照并发方式向目标节点传输其需要接收的配置文件;
所述按照并发方式向目标节点传输其需要接收的配置文件包括:
获取目标节点的在网络中的状态信息,并得到可用网络队列Q_Net;
将各个目标节点需要接受的配置文件按照由小到大的顺序排序,得到文件队列Q_File;
按照可用网络队列Q_Net和文件队列Q_File的数量关系,多条链路同时进行并发传输数据。
2.根据权利要求1所述的方法,其特征在于,所述管理配置系统获取配置信息并生成配置文件和配置文件映射表包括:
响应于自动配置指令,获取第一数据、第二数据、第三数据和第四数据;
根据第一数据、第二数据和第四数据生成配置文件;
根据第三数据获取目标游戏服务器集合;
建立所述配置文件与所述目标游戏服务器集合中各个游戏服务器的对应关系,并将所述对应关系存入配置文件映射表。
3.根据权利要求1所述的方法,其特征在于:
所述向分发成功的配置文件对应的目标游戏服务器发布第一通知消息包括:
获取配置文件的分发结果,记录配置文件的分发状态;
根据所述分发状态生成第一通知消息,并将所述第一通知消息压入任务队列;
按照预设规则从所述任务队列中弹出排在队首的第一通知消息,并将所述第一通知消息传输至目标游戏服务器以便于所述目标游戏服务器向分布式文件系统拉取所述配置文件。
4.根据权利要求3所述的方法,其特征在于,还包括:
提取第一通知消息与目标游戏服务器之间的对应关系,所述目标游戏服务器为用于接收第一通知消息的游戏服务器;
将目标游戏服务器相同的第一通知消息进行合并得到合并后的第一通知消息。
5.一种实现游戏实时动态加载配置的系统,其特征在于,包括管理配置系统、分布式文件系统、游戏服务器和游戏客户端;
所述管理配置系统用于获取配置信息并生成配置文件和配置文件映射表,所述配置文件映射表用于记录配置文件与游戏服务器的对应关系;根据所述配置文件映射表,将配置文件分发至分布式文件系统;向分发成功的配置文件对应的目标游戏服务器发布第一通知消息;
所述目标游戏服务器用于根据所述第一通知消息向分布式文件系统拉取配置文件,根据所述配置文件选择目标游戏客户端,并向所述目标游戏客户端发布第二通知消息;
所述目标游戏客户端用于根据所述第二通知消息向分布式文件系统拉取配置文件;
内容分发集群,所述内容分发集群用于根据配置文件映射表获取文件传输记录表,所述文件传输记录表用于记录目标节点与所述目标节点需要接收的配置文件之间的对应关系;根据所述文件传输记录表按照并发方式向目标节点传输其需要接收的配置文件;
所述内容分发集群包括:
可用网络队列获取模块,用于获取目标节点的在网络中的状态信息,并得到可用网络队列Q_Net;
文件队列获取模块,用于将各个目标节点需要接受的配置文件按照由小到大的顺序排序,得到文件队列Q_File;
并发传输模块,用于按照可用网络队列Q_Net和文件队列Q_File的数量关系,多条链路同时进行并发传输数据。
6.根据权利要求5所述的系统,其特征在于,所述管理配置系统包括:
数据获取模块,用于响应于自动配置指令,获取第一数据、第二数据、第三数据和第四数据;
配置文件生成模块,用于根据第一数据、第二数据和第四数据生成配置文件;
目标游戏服务器集合获取模块,用于根据第三数据获取目标游戏服务器集合;
配置文件映射表获取模块,用于建立所述配置文件与所述目标游戏服务器集合中各个游戏服务器的对应关系,并将所述对应关系存入配置文件映射表。
7.根据权利要求5所述的系统,其特征在于,所述管理配置系统包括:
分发状态获取模块,用于获取配置文件的分发结果,记录配置文件的分发状态;
消息压入模块,用于根据所述分发状态生成第一通知消息,并将所述第一通知消息压入任务队列;
通知模块,用于按照预设规则从所述任务队列中弹出排在队首的第一通知消息,并将所述第一通知消息传输至目标游戏服务器以便于所述目标游戏服务器向分布式文件系统拉取所述配置文件。
8.一种计算机可读存储介质,用于存储程序,其特征在于,所述程序用于实现权利要求1中一种实现游戏实时动态加载配置的方法。
CN201810800471.9A 2018-07-20 2018-07-20 一种实现游戏实时动态加载配置的方法及系统 Active CN109248440B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810800471.9A CN109248440B (zh) 2018-07-20 2018-07-20 一种实现游戏实时动态加载配置的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810800471.9A CN109248440B (zh) 2018-07-20 2018-07-20 一种实现游戏实时动态加载配置的方法及系统

Publications (2)

Publication Number Publication Date
CN109248440A CN109248440A (zh) 2019-01-22
CN109248440B true CN109248440B (zh) 2019-10-29

Family

ID=65048932

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810800471.9A Active CN109248440B (zh) 2018-07-20 2018-07-20 一种实现游戏实时动态加载配置的方法及系统

Country Status (1)

Country Link
CN (1) CN109248440B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110292772B (zh) * 2019-07-23 2023-01-24 上海网之易璀璨网络科技有限公司 游戏中合成游戏地图的方法及装置
CN110502353A (zh) * 2019-08-28 2019-11-26 行吟信息科技(上海)有限公司 一种虚拟道具下发方法及系统
CN111045813B (zh) * 2019-12-27 2024-01-02 京北方信息技术股份有限公司 一种任务分发系统及方法
CN111541555A (zh) * 2020-03-24 2020-08-14 中国平安人寿保险股份有限公司 群聊优化方法及相关产品
CN111450536A (zh) * 2020-03-30 2020-07-28 网易(杭州)网络有限公司 数据处理方法、装置、电子设备及计算机可读介质
CN115250269B (zh) * 2022-07-26 2024-02-02 中银金融科技有限公司 一种文件分配方法及装置、存储介质及电子设备

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101902439B (zh) * 2009-05-26 2016-04-06 北京金山软件有限公司 更新客户端上业务服务器信息的方法、系统和装置
CN103795761A (zh) * 2012-11-01 2014-05-14 腾讯科技(深圳)有限公司 一种网络游戏数据下载方法和系统
CN104092719B (zh) * 2013-12-17 2015-10-07 深圳市腾讯计算机系统有限公司 文件传输方法、装置及分布式集群文件系统
CN105988809B (zh) * 2015-02-13 2019-03-22 广州四三九九信息科技有限公司 一种游戏资源的在线加载方法及微端引擎
CN105511889B (zh) * 2016-01-15 2020-01-07 珠海金山网络游戏科技有限公司 一种通用的游戏版本增量更新系统和方法
CN107154866B (zh) * 2017-04-19 2018-10-30 腾讯科技(深圳)有限公司 实现业务动态配置的方法和系统
CN107038050B (zh) * 2017-04-25 2020-05-12 合肥充盈信息科技有限公司 一种基于虚拟服务器的游戏配置加载方法

Also Published As

Publication number Publication date
CN109248440A (zh) 2019-01-22

Similar Documents

Publication Publication Date Title
CN109248440B (zh) 一种实现游戏实时动态加载配置的方法及系统
CN106656867B (zh) 一种基于虚拟网络的应用感知的动态sdn配置方法
CN106484622B (zh) 测试方法、装置及系统
CN105245301B (zh) 一种基于时间触发的机载光网络仿真系统
CN104077212B (zh) 压力测试系统及方法
Ghomi et al. A simulation model for multi-project resource allocation
Alfieri et al. Maximizing system lifetime in wireless sensor networks
CN108804320A (zh) 自动化测试方法、装置、计算机设备及存储介质
WO2007033005A3 (en) System and method for gaming-content configuration and management system
CN108920153A (zh) 一种基于负载预测的Docker容器动态调度方法
CN108600300A (zh) 日志数据处理方法及装置
CN106487553A (zh) Vnf实例的处理方法、装置及vnfm
CN104243405A (zh) 一种请求处理方法、装置及系统
KR101593984B1 (ko) 분산 테스트 시스템 및 방법, 분산 테스트 관제 시스템 및 방법, 분산 테스트 플랜 작성 장치 및 방법, 분산 테스트 에이전트 및 분산 테스트 플랜 실행 방법
CN108574706A (zh) 媒体文件的推送方法及装置
CN107370796A (zh) 一种基于Hyper TF的智能学习系统
JP2022525880A (ja) サーバーの負荷予測及び高度なパフォーマンス測定
CN113268309B (zh) 一种面向SaaS应用模式的兵棋推演系统
Xu et al. piFogBed: a fog computing testbed based on raspberry pi
CN116755867B (zh) 一种面向卫星云的计算资源调度系统、方法及存储介质
CN116700920A (zh) 云原生混合部署集群资源调度方法及装置
CN118678991A (zh) 基于人工智能的网络存储游戏分配
CN105933136B (zh) 一种资源调度方法及系统
El Mougy et al. A context and application-aware framework for resource management in dynamic collaborative wireless M2M networks
Sharma et al. Intelligent service placement algorithm based on DDQN and prioritized experience replay in IoT-Fog computing environment

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
CP03 Change of name, title or address

Address after: No.68, Qitai Road, Suzhou Industrial Park, Suzhou area, China (Jiangsu) pilot free trade zone 215006

Patentee after: Friendship time Technology Co.,Ltd.

Address before: Building 18, Suhua Science Park, 208 Tongyuan Road, Suzhou Industrial Park, Jiangsu Province, 215006

Patentee before: SUZHOU WANYOU SHIDAI TECHNOLOGY Co.,Ltd.

CP03 Change of name, title or address