动态调节人流负载均衡的方法及系统的制作方法_2

文档序号:9791789阅读:来源:国知局
[0038]所述镜像场景创建子模块创建的每一镜像场景的人流最大容纳量与其对应的热点场景的人流最大容纳量相同,且每一镜像场景中的所有配置与其对应的热点场景中的所有配置相同。
[0039]所述分流模块包括:
[0040]镜像场景获取子模块,用于获取玩家所进入的目标场景的镜像场景;
[0041 ]人数记录子模块,用于记录进入镜像场景的玩家数量和目标场景的玩家数量;
[0042]判断子模块,用于根据所述人数记录子模块记录的镜像场景当前的玩家数量判断是否继续允许玩家进入,产生并发送判断子结果;
[0043]分流子模块,用于将玩家分流至其进入的目标场景的镜像场景中,接收并根据所述判断子模块的判断子结果完成玩家的分流;
[0044]当判断子模块判断得到进入镜像场景的玩家数量小于或等于该镜像场景的人流最大容纳量时,则分流子模块继续将玩家分流至该镜像场景中;否则,判断子模块还用于判断该镜像场景对应的目标场景是否还具有其它镜像场景,如果判断得到该镜像场景对应的目标场景还具有其它镜像场景,则分流子模块将玩家分流至该镜像场景对应的目标场景的另一镜像场景中,否则,分流子模块直接允许玩家进入该目标场景中。
[0045]所述分流模块还包括请求人数记录子模块,用于记录请求进入任一目标场景的玩家数量;
[0046]及所述判断子模块还用于根据人数记录子模块中的玩家数量判断目标场景和与其对应的所有镜像场景中的玩家数量已达到其人流最大容纳量;如果判断子模块判断得到目标场景和与其对应的所有镜像场景中的玩家数量已达到其人流最大容纳量,且通过所述请求人数记录子模块得到还存在数量大于等于人流最大容纳量的1/4的玩家请求进入该目标场景时,发送一创建指令至所述镜像场景创建模块;
[0047]所述创建场景创建模块还用于接收到所述创建指令后创建与该目标场景对应的新的镜像场景,并发送一创建完成指令至所述分流子模块;
[0048]所述分流子模块还用于接收到创建完成指令后将剩余的玩家分流至该新的镜像场景中。
[0049]所述的动态调节人流负载均衡的系统还包括场景关闭模块,及当所述判断子模块根据人数记录子模块中的玩家数量判断得到目标场景及其所有镜像场景中的当前玩家人数总和小于等于人流最大容纳量的1.2倍时,发送一关闭指令至所述场景关闭模块;所述场景关闭模块用于接收到所述关闭指令后关闭目标场景的所有镜像场景,并将当前玩家都分配至该目标场景中。
[0050]由于本发明的动态调节人流负载均衡的系统能够实现本发明的动态调节人流负载均衡的方法,因此,本发明的动态调节人流负载均衡的系统也具有相同的技术效果。
[0051]为了更好地理解和实施,下面结合附图详细说明本发明。
【附图说明】
[0052]图1是本发明动态调节人流负载均衡的方法的示意图;
[0053]图2是本发明动态调节人流负载均衡的方法中的步骤S3进一步完善后的示意图;
[0054]图3是本发明动态调节人流负载均衡的方法中的步骤S4进一步完善后的示意图;
[0055]图4是本发明动态调节人流负载均衡的系统的结构框图;
[0056]图5是图4中的动态调节人流负载均衡的系统进一步完善后的结构框图;
[0057]图6是图5中的动态调节人流负载均衡的系统进一步完善后的结构框图;
[0058]图7是图6中的动态调节人流负载均衡的系统进一步完善后的结构框图;
[0059]图8是图7中的动态调节人流负载均衡的系统进一步完善后的结构框图。
【具体实施方式】
[0060]为了解决现有技术中因过多玩家集中于同一游戏场景而发生的拥挤,造成服务器负载过大而响应延迟,对玩家游戏体验感造成影响等问题,本发明提供了一种动态调节人流负载均衡的方法。
[0061]请参阅图1,一种动态调节人流负载均衡的方法,包括以下步骤:
[0062]步骤S1:设定游戏中所有场景的人流最大容纳量;
[0063]步骤S2:根据游戏中所有场景的人流分布状况,获取人流负载量超过最大容纳量的场景,得到所有热点场景;
[0064]步骤S3:分别对所有热点场景创建至少一与其对应的镜像场景;
[0065]步骤S4:根据玩家需要进入的目标场景判断该目标场景是否具有镜像场景,如果有,则将玩家分流至与该目标场景对应的镜像场景中;如果没有,则直接将玩家分配到该目标场景中。在本实施例中,当目标场景具有镜像场景时,则该目标场景即为其中一个热点场景。
[0066]为合理地创建一定数量的镜像场景,避免因镜像场景过少而不能够满足玩家分流需求及导致某个镜像场景因人流负载过大而导致响应过慢现象发生,同时也避免因镜像场景过多而造成的资源浪费现象发生,实现对实际需求的进一步完善,请参阅图2,作为一种更优的技术方案,所述步骤S3中,具体包括以下步骤:
[0067]步骤S31:获取每一热点场景的人流流入最大值;
[0068]步骤S32:计算每一热点场景的镜像场景数量,每一热点场景的镜像场景数量=该热点场景的人流流入最大值除以该场景的人流最大容纳量。如果计算得到的镜像场景数量的值不是整数,则取该值的整数部分+1后的结果为镜像场景的数量。也即,假设计算得到的镜像场景数量为1.2,则镜像场景的数量取值为1+1 = 2。
[0069]步骤S33:根据计算得到的每一热点场景的镜像场景数量创建相同数量且对应于该热点场景的镜像场景。
[0070]为保证进入镜像场景中的玩家能够与进入该镜像场景对应的热点场景的玩家具有相同的游戏体验,不会具有体验上的差别,进一步提高玩家的游戏体验感,作为一种更优的技术方案,每一镜像场景的人流最大容纳量与其对应的热点场景的人流最大容纳量相同,且每一镜像场景中的所有配置与其对应的热点场景中的所有配置相同。
[0071]为保证分配到具有多个镜像场景的目标场景的其中一镜像场景中的玩家人数能够达到饱和即最大值,以避免因玩家分配过于分散而不能正常组队练级的现象发生;同时也为保证分配到具有多个镜像场景的目标场景的其中一镜像场景中的玩家人数达到饱和时,能够及时将玩家分配到另一镜像场景中;同时保证使得当仅具有一个镜像场景的目标场景的镜像场景中的玩家人数达到饱和时,能够及时将玩家分配到目标场景中,以更加合理及时地完成玩家的分流,请参阅图3,作为一种更优的技术方案,所述步骤S4中,在判断目标场景具有镜像场景后将玩家分流至与该目标场景对应的镜像场景中的这一步骤,具体包括以下步骤:
[0072]步骤S41:获取玩家所进入的目标场景的镜像场景;
[0073]步骤S42:将玩家分流至其进入的目标场景的镜像场景中;
[0074]步骤S43:记录进入镜像场景的玩家数量,并根据镜像场景当前的玩家数量判断是否继续允许玩家进入;具体地,步骤S43包括以下步骤:
[0075]步骤S431:记录进入镜像场景的玩家数量;
[0076]步骤S432:判断进入镜像场景的玩家数量是否大于该镜像场景的人流最大容纳量,如果不是,则继续将玩家分流至该镜像场景中,如果是,则判断该镜像场景对应的目标场景是否还具有其它镜像场景;
[0077]步骤S433:如果该镜像场景对应的目标场景还具有其它镜像场景,则将玩家分流至该镜像场景对应的目标场景的另一镜像场景中,否则,直接允许玩家进入该目标场景中;
[0078]步骤S44:完成玩家的分流。
[0079]为进一步保证玩家能够正常地组队练级,作为一种更优的技术方案,所述步骤S43还包括步骤S434:判断进入到其它镜像场景的玩家人数是否满足组队
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1