跨服匹配方法、装置及系统与流程

文档序号:12871551阅读:364来源:国知局
跨服匹配方法、装置及系统与流程

本发明涉及互联网技术领域,具体而言,涉及一种跨服匹配方法、装置及系统。



背景技术:

游戏中经常会有与众多的在线玩家或者离线玩家匹配的情景,尤其在3d游戏战斗匹配中更是常见。而当在线玩家要和在线玩家、离线玩家进行匹配进行战斗时时,会遇到匹配效率的问题,而这个匹配效率直接决定了玩家的游戏战斗体验,因此,如何实现在线玩家要和在线玩家、离线玩家匹配就显的至关重要。但当在线玩家有几十万时,离线玩家又有上百万时,在线玩家同时并发匹配向数据库发出匹配请求,数据库就会满负荷或者超负荷运行,在线玩家的匹配等待时间会特别长,游戏体验会变很差,甚至不可接受。



技术实现要素:

本发明的目的在于提供一种跨服匹配方法、装置及系统,以改善上述问题。为了实现上述目的,本发明采取的技术方案如下:

第一方面,本发明实施例提供了一种跨服匹配方法,所述方法包括:第一服务器在预设时间内接收到多个终端的匹配请求后,将所述多个终端的匹配请求中的第一部分请求发送给第二服务器;基于所述第二服务器返回的第一匹配信息,判断是否存在与所述多个终端的匹配请求中的第二部分请求中至少一个终端对应的匹配信息;若判断结果为是,则将所述至少一个终端对应的匹配信息发送给该终端。

第二方面,本发明实施例提供了一种跨服匹配方法,所述方法包括:多个终端向第一服务器发送匹配请求;所述第一服务器在预设时间内接收到所述多个终端的匹配请求后,将所述多个终端的匹配请求中的第一部分请求发送给第二服务器;所述第二服务器返回第一匹配信息给所述第一服务器;所述第一服务器基于接收到的所述第一匹配信息,判断是否存在与所述多个终端的匹配请求中的第二部分请求中至少一个终端对应的匹配信息;所述第一服务器若判断结果为是,则将所述至少一个终端对应的匹配信息发送给该终端。

第三方面,本发明实施例提供了一种跨服匹配装置,所述装置包括第一发送单元、判断单元和第一匹配单元。第一发送单元,用于第一服务器在预设时间内接收到多个终端的匹配请求后,将所述多个终端的匹配请求中的第一部分请求发送给第二服务器。判断单元,用于基于所述第二服务器返回的第一匹配信息,判断是否存在与所述多个终端的匹配请求中的第二部分请求中至少一个终端对应的匹配信息。第一匹配单元,用于若判断结果为是,则将所述至少一个终端对应的匹配信息发送给该终端。

第四方面,本发明实施例提供了一种跨服匹配系统,所述系统包括第一服务器、多个终端和第二服务器。所述第一服务器分别与所述多个终端、所述第二服务器通过网络连接。多个终端用于向第一服务器发送匹配请求;第一服务器用于在预设时间内接收到多个终端的匹配请求后,将所述多个终端的匹配请求中的第一部分请求发送给第二服务器;所述第二服务器用于返回第一匹配信息给所述第一服务器;所述第一服务器还用于基于接收到的所述第一匹配信息,判断是否存在与所述多个终端的匹配请求中的第二部分请求中至少一个终端对应的匹配信息;所述第一服务器还用于若判断结果为是,则将所述至少一个终端对应的匹配信息发送给该终端。

本发明实施例提供的一种跨服匹配方法、装置及系统,在第一服务器在预设时间内接收到多个终端的匹配请求后,将所述多个终端的匹配请求中的第一部分请求发送给第二服务器;再基于所述第二服务器返回的第一匹配信息,判断是否存在与所述多个终端的匹配请求中的第二部分请求中至少一个终端对应的匹配信息;若判断结果为是,则将所述至少一个终端对应的匹配信息发送给该终端,以此实现第一服务器以高并发平缓进入方式来处理多个终端的匹配请求,降低第二服务器的负荷,从而节省匹配时间,提高跨服匹配战斗的效率,提升用户的体验。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明实施例提供的第一服务器、多个终端、第二服务器进行交互的示意图;

图2为本一种可应用于本发明实施例中的第一服务器的结构框图;

图3为本发明第一实施例提供的跨服匹配方法的流程图;

图4为本发明第二实施例提供的跨服匹配方法的时序图;

图5为本发明第三实施例提供的跨服匹配装置的结构框图。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

第一实施例

本发明实施例所提供的跨服匹配方法、装置及系统可应用于如图1所示的应用环境中。如图1所示,是本发明较佳实施例提供的第一服务器100、多个终端110、第二服务器120进行交互的示意图。跨服匹配系统包括第一服务器100、多个终端110和第二服务器120。所述第一服务器100分别与所述多个终端110、所述第二服务器120通过网络130连接。所述第一服务器100通过网络130与一个或多个终端110进行通信连接,以进行数据通信或交互。所述第一服务器100通过网络130与第二服务器120进行通信连接,以进行数据通信或交互。

所述第一服务器100和第二服务器130均可以是网络服务器、数据库服务器等。所述终端110可以是个人电脑(personalcomputer,pc)、平板电脑、智能手机、个人数字助理(personaldigitalassistant,pda)等用户终端,其可以安装应用客户端。

在本实施例中,所述多个终端110均可以为以上任一类型的用户终端,其可以安装游戏,如勇者大冒险。

多个终端110用于向第一服务器100发送匹配请求。

第一服务器100用于在预设时间内接收到多个终端的匹配请求后,将所述多个终端110的匹配请求中的第一部分请求发送给第二服务器120。

所述第二服务器120用于返回第一匹配信息给所述第一服务器100。

所述第一服务器100还用于基于接收到的所述第一匹配信息,判断是否存在与所述多个终端的匹配请求中的第二部分请求中至少一个终端对应的匹配信息。

所述第一服务器100还用于若判断结果为是,则将所述至少一个终端对应的匹配信息发送给该终端110。

图2示出了一种可应用于本发明实施例中的第一服务器100的结构框图。如图2所示,第一服务器100包括存储器102、存储控制器103、一个或多个(图中仅示出一个)处理器104、外设接口105、射频模块106等。这些组件通过一条或多条通讯总线/信号线108相互通讯。

存储器102可用于存储软件程序以及模块,如本发明实施例中的跨服匹配方法及装置对应的程序单元,处理器104通过运行存储在存储器102内的软件程序以及单元,从而执行各种功能应用以及数据处理,如本发明实施例提供的跨服匹配方法及装置。

存储器102可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。处理器104以及其他可能的组件对存储器102的访问可在存储控制器103的控制下进行。

外设接口105将各种输入/输入装置耦合至处理器104以及存储器102。在一些实施例中,外设接口105、处理器104以及存储控制器103可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。

射频模块106用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯。

可以理解,图2所示的结构仅为示意,第一服务器100还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。图2中所示的各组件可以采用硬件、软件或其组合实现。

第一实施例

请参阅图3,本发明实施例提供了一种跨服匹配方法,本实施例描述的是第一服务器的执行流程,所述方法包括:

步骤s200:第一服务器在预设时间内接收到多个终端的匹配请求后,将所述多个终端的匹配请求中的第一部分请求发送给第二服务器;

所述预设时间可以为1/60秒。在每隔1/60秒(tick)的同一时间段内,多个终端均向所述第一服务器发送匹配请求,即以高并发地方式发送匹配请求;所述第一服务器在1/60秒内接收到多个终端的匹配请求后,将所述多个终端的匹配请求中的第一部分请求发送给第二服务器。具体地,所述第一服务器在1/60秒内接收到多个终端的匹配请求后,按照1毫秒n个匹配请求的速度,将所述多个终端的匹配请求中的第一部分请求发送给第二服务器;将所述多个终端划分为多个终端组,每个终端组包括n个终端,其中,所述第一部分请求为所述多个终端中的一个终端组发送的匹配请求,以平缓进入的方式将将所述多个终端的匹配请求中的第一部分请求发送给第二服务器。当所述多个终端为上万个终端时,n可以为100。

在本实施例中,终端上安装有游戏,用户可以控制游戏中的玩家角色做任务,例如3d游戏战斗,这时就需要多个玩家角色一起参与战斗,玩家角色之间就要进行匹配,匹配成功的,才能一起战斗。在同一个游戏中,在同一时刻,多个终端都会向第一服务器发送匹配请求,获得第一服务器返回的匹配信息,进行战斗任务。

步骤s210:基于所述第二服务器返回的第一匹配信息,判断是否存在与所述多个终端的匹配请求中的第二部分请求中至少一个终端对应的匹配信息;

进一步地,第二服务器接收到所述多个终端的匹配请求中的第一部分请求后,查找预先存储在数据库中的数据,并将与所述多个终端的匹配请求中的第一部分请求相关联的第一匹配信息发送给所述第一服务器;第一服务器基于所述第二服务器返回的第一匹配信息,判断是否存在与所述多个终端的匹配请求中的第二部分请求中至少一个终端对应的匹配信息。其中,所述第二部分请求为所述多个终端中的再一个终端组发送的匹配请求。

步骤s220:若判断结果为是,则将所述至少一个终端对应的匹配信息发送给该终端。

若判断结果为是,也就是在所述第二服务器返回的第一匹配信息里,存在与所述多个终端的匹配请求中的第二部分请求中至少一个终端对应的匹配信息,则将所述至少一个终端对应的匹配信息发送给该终端。

为了进一步提高匹配效率,所述方法还可以包括:将所述第二服务器返回的第一匹配信息缓存在所述第一服务器的内存中。

作为一种实施方式,第一服务器的内存中的数据会根据实际情况定时刷新,保证数据的新鲜活度,既可以解决数据的匹配的速率问题,也可以保证准确度。

基于步骤210,所述方法还可以包括:

若判断结果为否,则将所述多个终端的匹配请求中的第二部分请求发送给所述第二服务器;

将所述第二服务器返回的第二匹配信息缓存在所述第一服务器的内存中;

基于所述第一服务器的内存中缓存的所述第一匹配信息和第二匹配信息,获取第二部分请求中至少一个终端对应的匹配信息并将所述第二部分请求中至少一个终端对应的匹配信息发送给该终端。

进一步地,若在第一服务器返回的第一匹配信息里,不存在与所述多个终端的匹配请求中的第二部分请求中至少一个终端对应的匹配信息,则将所述多个终端的匹配请求中的第二部分请求发送给所述第二服务器;在第二服务器接收到所述多个终端的匹配请求中的第二部分请求后,查找预先存储在数据库中的数据,并将与所述多个终端的匹配请求中的第二部分请求相关联的第二匹配信息发送给所述第一服务器;再将所述第二服务器返回的第二匹配信息缓存在所述第一服务器的内存中;然后基于所述第一服务器的内存中缓存的所述第一匹配信息和第二匹配信息,获取第二部分请求中至少一个终端对应的匹配信息并将所述第二部分请求中至少一个终端对应的匹配信息发送给该终端。

可以理解的是,重复上述操作,所述第一服务器的内存可以缓存更多的匹配信息;当达到第一服务器的内存最大容量时,可以清除内存里面的数据,以此缓存更多的新数据。

本发明实施例提供了一种跨服匹配方法,在第一服务器在预设时间内接收到多个终端的匹配请求后,将所述多个终端的匹配请求中的第一部分请求发送给第二服务器;再基于所述第二服务器返回的第一匹配信息,判断是否存在与所述多个终端的匹配请求中的第二部分请求中至少一个终端对应的匹配信息;若判断结果为是,则将所述至少一个终端对应的匹配信息发送给该终端,以此实现第一服务器以高并发平缓进入方式来处理多个终端的匹配请求,降低第二服务器的负荷,从而节省匹配时间,提高跨服匹配战斗的效率,提升用户的体验。

第二实施例

请参阅图4,本发明实施例提供了一种跨服匹配方法,所述方法包括:

步骤s300:多个终端向第一服务器发送匹配请求;

步骤s310:所述第一服务器在预设时间内接收到所述多个终端的匹配请求后,将所述多个终端的匹配请求中的第一部分请求发送给第二服务器;

步骤s320:所述第二服务器返回第一匹配信息给所述第一服务器;

作为一种实施方式,将所述第二服务器返回的第一匹配信息缓存在所述第一服务器的内存中。

步骤s330:所述第一服务器基于接收到的所述第一匹配信息,判断是否存在与所述多个终端的匹配请求中的第二部分请求中至少一个终端对应的匹配信息;

步骤s340:所述第一服务器若判断结果为是,则将所述至少一个终端对应的匹配信息发送给该终端;

步骤s350:所述第一服务器若判断结果为否,则将所述多个终端的匹配请求中的第二部分请求发送给所述第二服务器;

步骤s360:所述第二服务器返回第二匹配信息给所述第一服务器;

步骤s370:所述第一服务器将所述第二服务器返回的第二匹配信息缓存在所述第一服务器的内存中;

步骤s380:所述第一服务器基于所述第一服务器的内存中缓存的所述第一匹配信息和第二匹配信息,获取第二部分请求中至少一个终端对应的匹配信息并将所述第二部分请求中至少一个终端对应的匹配信息发送给该终端。

本发明实施例提供的一种跨服匹配方法,通过第一服务器基于多个终端的匹配请求向第二服务器获取匹配信息并缓存在内存中,实现第一服务器以高并发平缓进入方式来处理多个终端的匹配请求,降低第二服务器的负荷,从而节省匹配时间,提高跨服匹配战斗的效率,提升用户的体验。

第三实施例

请参阅图5,本发明实施例提供了一种跨服匹配装置400,所述装置400包括:第一发送单元410、判断单元430和第一匹配单元440。

第一发送单元410,用于第一服务器在预设时间内接收到多个终端的匹配请求后,将所述多个终端的匹配请求中的第一部分请求发送给第二服务器。

判断单元430,用于基于所述第二服务器返回的第一匹配信息,判断是否存在与所述多个终端的匹配请求中的第二部分请求中至少一个终端对应的匹配信息。

第一匹配单元440,用于若判断结果为是,则将所述至少一个终端对应的匹配信息发送给该终端。

所述装置400还可以包括:

第一缓存单元420,用于将所述第二服务器返回的第一匹配信息缓存在所述第一服务器的内存中。

第二发送单元450,用于若判断结果为否,则将所述多个终端的匹配请求中的第二部分请求发送给所述第二服务器。

第二缓存单元460,用于将所述第二服务器返回的第二匹配信息缓存在所述第一服务器的内存中。

第二匹配单元470,用于基于所述第一服务器的内存中缓存的所述第一匹配信息和第二匹配信息,获取第二部分请求中至少一个终端对应的匹配信息并将所述第二部分请求中至少一个终端对应的匹配信息发送给该终端。

需要说明的是,本实施例中的各单元可以是由软件代码实现,此时,上述的各单元可存储于设置所述第一服务器100的存储器102内。以上各单元同样可以由硬件例如集成电路芯片实现。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1