CN105516082A - 一种游戏客户端与服务器的连接方法以及游戏客户端 - Google Patents
一种游戏客户端与服务器的连接方法以及游戏客户端 Download PDFInfo
- Publication number
- CN105516082A CN105516082A CN201510830611.3A CN201510830611A CN105516082A CN 105516082 A CN105516082 A CN 105516082A CN 201510830611 A CN201510830611 A CN 201510830611A CN 105516082 A CN105516082 A CN 105516082A
- Authority
- CN
- China
- Prior art keywords
- server
- development
- testing
- version information
- testing 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/131—Protocols for games, networked simulations or virtual reality
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
- Debugging And Monitoring (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种游戏客户端与服务器的连接方法,包括:当启动游戏程序时,获取预先配置好的服务器信息;所述服务器信息记载了多个开发测试服务器的名称、每个所述开发测试服务器的IP地址与端口信息、以及预先为每个开发测试服务器配置的版本信息;根据所述服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器;根据所述待连接的服务器的IP地址与端口信息,连接到所述待连接的服务器。采用本发明实施例,能够很容易地更改待连接的服务器,减少程序人员在游戏的开发测试阶段的工作量。同时本发明还公开了一种用于执行上述游戏客户端与服务器的连接方法的游戏客户端。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种游戏客户端与服务器的连接方法以及游戏客户端。
背景技术
一个游戏程序在公测前,通常需要经过开发-测试-审核三个阶段。具体地,开发人员利用开发服务器进行游戏开发以及Bug修复;开发人员确认后,测试人员利用测试服务器进行详尽的测试;测试人员确认后,审核人员利用审核服务器进行最基本的回归测试,以确保游戏能正常运行。最后才将游戏外放到公测服务器提供给玩家玩。可见,在游戏开发测试阶段,运行游戏程序的客户端需要与多个服务器进行连接。
为了实现客户端与指定的服务器的连接,现有技术通常是将待连接的服务器的IP地址写到游戏程序中,在运行游戏程序时,直接连接到所述待连接的服务器中。但是,在需要更换连接的服务器时,不得不进入到游戏程序里面改写里面的待连接的服务器的IP地址并且重新打包、安装,这无疑为程序人员带来了繁重的工作量。
发明内容
本发明提供了一种游戏客户端与服务器的连接方法以及游戏客户端,使得游戏客户端能够很容易地更改待连接的服务器,减少程序人员在游戏的开发测试阶段的工作量。
本发明一方面提供一种游戏客户端与服务器的连接方法,包括:
当启动游戏程序时,获取预先配置好的服务器信息;其中,所述游戏程序预先配置有版本信息;所述服务器信息记载了多个开发测试服务器的名称、每个所述开发测试服务器的IP地址与端口信息、以及预先为每个开发测试服务器配置的版本信息;所述版本信息包括游戏程序的版本号;
根据所述服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器;
根据所述待连接的服务器的IP地址与端口信息,连接到所述待连接的服务器。
作为所述连接方法的进一步改进,每个开发测试服务器配置有不同的优先级;
所述根据所述服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器,包括:
检查所述服务器信息中所有开发测试服务器的版本信息;
当查找到一个配置有与所述游戏程序相同的版本信息的开发测试服务器时,将查找到的开发测试服务器作为待连接的服务器;
当查找到多个配置有与所述游戏程序相同的版本信息的开发测试服务器时,将查找到的配置有最高优先级的开发测试服务器作为待连接的服务器。
作为所述连接方法的进一步改进,每个开发测试服务器所配置的版本信息按照设定的顺序记载在所述服务器信息中;
所述根据所述服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器,包括:
根据设定的顺序,依次检查所述服务器信息中的开发测试服务器的版本信息;
将首个查找到的配置有与所述游戏程序相同的版本信息的开发测试服务器作为待连接的服务器。
作为所述连接方法的进一步改进,所述服务器信息还记载了公测服务器的名称、IP地址与端口信息;
所述游戏客户端与服务器的连接方法还包括:当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,将所述公测服务器作为所述待连接的服务器。
作为所述连接方法的进一步改进,所述服务器信息还记载了多个公测服务器的名称以及每个公测服务器的IP地址与端口信息;
所述游戏客户端与服务器的连接方法还包括:当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,从所述多个公测服务器中随机选取一个公测服务器作为待连接的服务器。
作为所述连接方法的进一步改进,所述服务器信息还记载了多个公测服务器的名称以及每个公测服务器的IP地址与端口信息;
所述游戏客户端与服务器的连接方法还包括:
当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,判断是否存在与所述多个公测服务器中的一个公测服务器的连接记录;
当存在所述连接记录时,将所述连接记录所记载的连接过的公测服务器作为待连接的服务器;
当不存在所述连接记录时,从所述多个公测服务器中随机选取一个公测服务器作为待连接的服务器,并存储与所选取的公测服务器的连接记录。
作为所述连接方法的进一步改进,所述多个开发测试服务器包括开发服务器、测试服务器与审核服务器。
作为所述连接方法的进一步改进,所述版本信息还包括游戏程序的渠道名称。
本发明另一方面提供了一种游戏客户端,包括:
信息获取模块,用于当启动游戏程序时,获取预先配置好的服务器信息;其中,所述游戏程序预先配置有版本信息;所述服务器信息记载了多个开发测试服务器的名称、每个所述开发测试服务器的IP地址与端口信息、以及预先为每个开发测试服务器配置的版本信息;所述版本信息包括游戏程序的版本号;
服务器查找模块,用于根据所述服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器;
服务器连接模块,用于根据所述待连接的服务器的IP地址与端口信息,连接到所述待连接的服务器。
作为所述游戏客户端的进一步改进,每个开发测试服务器配置有不同的优先级;
所述服务器查找模块包括:
版本信息检查单元,用于检查每个开发测试服务器的版本信息;
第一执行单元,用于当查找到一个配置有与所述游戏程序相同的版本信息的开发测试服务器时,将查找到的开发测试服务器作为待连接的服务器;
第二执行单元,用于当查找到多个配置有与所述游戏程序相同的版本信息的开发测试服务器时,将查找到的配置有最高优先级的开发测试服务器作为待连接的服务器。
作为所述游戏客户端的进一步改进,每个开发测试服务器所配置的版本信息按照设定的顺序记载在所述服务器信息中;
所述服务器查找模块包括:
版本信息检查单元,用于根据设定的顺序,依次检查所述服务器信息中的开发测试服务器的版本信息;
执行单元,用于将首个查找到的配置有与所述游戏程序相同的版本信息的开发测试服务器作为待连接的服务器。
作为所述游戏客户端的进一步改进,所述服务器信息还记载了公测服务器的名称、IP地址与端口信息;
所述游戏客户端还包括公测服选取模块;所述公测服选取模块用于当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,将所述公测服务器作为所述待连接的服务器。
作为所述游戏客户端的进一步改进,所述服务器信息还记载了多个公测服务器的名称以及每个公测服务器的IP地址与端口信息;
所述游戏客户端还包括公测服选取模块;所述公测服选取模块用于当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,从所述多个公测服务器中随机选取一个公测服务器作为待连接的服务器。
作为所述游戏客户端的进一步改进,所述服务器信息还记载了多个公测服务器的名称以及每个公测服务器的IP地址与端口信息;
所述游戏客户端还包括:
连接记录判断模块,用于当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,判断是否存在与所述多个公测服务器中的一个公测服务器的连接记录;
第一选取模块,用于当存在所述连接记录时,将所述连接记录所记载的连接过的公测服务器作为待连接的服务器;
第二选取模块,用于当不存在所述连接记录时,从所述多个公测服务器中随机选取一个公测服务器作为待连接的服务器,并存储与所选取的公测服务器的连接记录。
作为所述游戏客户端的进一步改进,所述多个开发测试服务器包括开发服务器、测试服务器与审核服务器。
作为所述游戏客户端的进一步改进,所述版本信息还包括游戏程序的渠道名称。
实施本发明,具有如下有益效果:本发明提供的一种游戏客户端与服务器的连接方法将游戏程序的版本信息作为定位到某个服务器的信息,游戏客户端根据预先配置的服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器。从而无需对游戏程序本身作任何改变,只要修改服务器信息中记载的服务器的版本信息,就能够改变游戏客户端所连接的服务器,减少了工程师在游戏开发测试阶段的工作量。本发明还进一步在服务器信息中加入公测服务器的信息,使得能够在游戏进入公测阶段能够自动连接到公测服务器,进一步减少了工程师在游戏开发测试阶段的工作量。同时,本发明还提供了一种用于执行上述游戏客户端与服务器的连接方法的游戏客户端。
附图说明
图1是本发明提供的游戏客户端与服务器的连接方法的第一实施例的流程示意图;
图2是本发明提供的游戏客户端的第一实施例的结构框图;
图3是本发明提供的游戏客户端与服务器的连接方法的第三实施例的服务器信息的列表示意图;
图4是本发明提供的游戏客户端与服务器的连接方法的第四实施例的流程示意图;
图5是本发明提供的游戏客户端的第四实施例的结构框图;
图6是本发明提供的游戏客户端与服务器的连接方法的第五实施例的流程示意图;
图7是本发明提供的游戏客户端与服务器的连接方法的第五实施例的服务器信息的列表示意图;
图8是本发明提供的游戏客户端的第五实施例的结构框图;
图9是本发明提供的游戏客户端与服务器的连接方法的第六实施例的流程示意图;
图10是本发明提供的游戏客户端的第六实施例的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,是本发明提供的游戏客户端与服务器的连接方法的第一实施例的流程示意图,该方法包括以下步骤:
S101,当启动游戏程序时,获取预先配置好的服务器信息;其中,所述游戏程序预先配置有版本信息;所述服务器信息记载了多个开发测试服务器的名称、每个所述开发测试服务器的IP地址与端口信息、以及预先为每个开发测试服务器配置的版本信息;所述版本信息包括游戏程序的版本号;
S102,根据所述服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器;
S103,根据所述待连接的服务器的IP地址与端口信息,连接到所述待连接的服务器。
在步骤S101中,所述获取预先配置好的服务器信息具体是通过连接到预先配置在所述游戏程序中的URL来获取所述预先配置好的服务器信息,一般URL的格式为http://update.maxx.163.com/serverlist_ios(xx为项目代号,ios为苹果,adr为安卓)。每个开发测试服务器预先配置有版本信息,且所述游戏程序也预先配置有版本信息。在本实施例中,所述版本信息为游戏程序的版本号。
在本实施例中,所述多个开发测试服务器包括开发服务器、测试服务器与审核服务器。所述开发服务器用于游戏开发以及Bug修复;所述测试服务器用于对游戏程序进行详尽的测试;所述审核服务器用于对游戏程序进行最基本的回归测试,以确保游戏能正常运行。本发明的开发测试服务器不限于上述的三种服务器,还可以包括其他类型的服务器,例如还可以包括封测服务器。所述封测服务器用于供部分的玩家玩,收集他们的意见反馈。
在本实施例中,将游戏程序的版本信息作为定位到某个服务器的信息,当需要连接到某个服务器时,只要将该服务器的版本信息修改到与游戏程序的版本信息相同,而将其他服务器的版本信息修改到与游戏程序的版本信息不同,即可自动定位到该服务器作为待连接的服务器。从而无需对游戏程序本身作任何改变,也能够改变游戏客户端所连接的服务器,减少了工程师在游戏开发测试阶段的工作量。
相应地,本发明还提供了一种游戏客户端的第一实施例。
如图2所示,其是本发明提供的游戏客户端的第一实施例的结构框图,包括:
信息获取模块101,用于当启动游戏程序时,获取预先配置好的服务器信息;其中,所述游戏程序预先配置有版本信息;所述服务器信息记载了多个开发测试服务器的名称、每个所述开发测试服务器的IP地址与端口信息、以及预先为每个开发测试服务器配置的版本信息;所述版本信息包括游戏程序的版本号;
服务器查找模块102,用于根据所述服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器;
服务器连接模块103,用于根据所述待连接的服务器的IP地址与端口信息,连接到所述待连接的服务器。
本实施例提供的游戏客户端用于执行上述游戏客户端与服务器的连接方法的第一实施例的所有方法步骤,其工作原理和有益效果一一对应,因而不再赘述。
本发明还提供了一种游戏客户端与服务器的连接方法的第二实施例,所述连接方法包括上述游戏客户端与服务器的连接方法的第一实施例中的步骤S101~S103,还进一步限定了:每个开发测试服务器配置有不同的优先级;
所述步骤S102具体包括:
检查所述服务器信息中所有开发测试服务器的版本信息;
当查找到一个配置有与所述游戏程序相同的版本信息的开发测试服务器时,将查找到的开发测试服务器作为待连接的服务器;
当查找到多个配置有与所述游戏程序相同的版本信息的开发测试服务器时,将查找到的配置有最高优先级的开发测试服务器作为待连接的服务器。
在上述游戏客户端与服务器的连接方法的第一实施例中,当需要改变连接的服务器时,需要对服务器信息上所有的开发测试服务器的版本信息进行修改,以保证只有一个开发测试服务器的版本信息与游戏程序的版本信息相匹配,防止冲突问题,使得修改的工作量较大。相比于上述游戏客户端与服务器的连接方法的第一实施例,本实施例的优点在于,当需要更改连接的服务器时,工程师对服务器信息中的开发测试服务器的版本信息修改量会减少,具体分析如下:
假设所述多个开发测试服务器包括第一服务器、第二服务器、第三服务器以及第四服务器,且这个四个服务器的优先级是依次降低的。这四个服务器所配置的版本号均为1.0.0,而所述游戏程序的版本号也为1.0.0,因此能够查找到四个与所述游戏程序相同的版本信息的服务器,而由于第一服务器的优先级最高,因此将第一服务器作为待连接的服务器。由于测试流程的需要,工程师需要将游戏程序换到第二服务器进行测试,则可以将第一服务器的版本号配置为0.9.9或者1.0.1,则能够查找到的三个与所述游戏程序相同的版本信息的服务器,且由于第二服务器的优先级最高,因此将第二服务器作为待连接的服务器。
可见,在本实施例中,将游戏程序的版本信息作为定位到某个服务器的信息,当需要连接到第N个服务器时,只要配置比所述第N个服务器的优先级高的服务器的版本信息与游戏程序的版本信息不同,并且配置第N个服务器的版本信息与游戏程序的版本信息相同,则可以自动定位到所述第N个服务器作为待连接的服务器,而无需修改比第N个服务器的优先级低的服务器的版本信息,进一步减少了工程师在游戏开发测试阶段的工作量。
在本实施例中,所述多个开发测试服务器包括开发服务器、测试服务器与审核服务器,所述开发服务器的优先级大于所述测试服务器的优先级,所述测试服务器的优先级大于所述审核服务器的优先级,这是基于开发测试的流程配置的,不限于这种配置方式。
相应地,本发明还提供了一种游戏客户端的第二实施例,所述游戏客户端包括上述游戏客户端的第一实施例中的信息获取模块101、服务器查找模块102以及服务器连接模块103,还进一步限定了:每个开发测试服务器配置有不同的优先级;
所述服务器查找模块102具体包括:
版本信息检查单元,用于检查所述服务器信息中所有开发测试服务器的版本信息;
第一执行单元,用于当查找到一个配置有与所述游戏程序相同的版本信息的开发测试服务器时,将查找到的开发测试服务器作为待连接的服务器;
第二执行单元,用于当查找到多个配置有与所述游戏程序相同的版本信息的开发测试服务器时,将查找到的配置有最高优先级的开发测试服务器作为待连接的服务器。
本实施例提供的游戏客户端用于执行上述游戏客户端与服务器的连接方法的第二实施例的所有方法步骤,其工作原理和有益效果一一对应,因而不再赘述。
本发明还提供了一种游戏客户端与服务器的连接方法的第三实施例,所述连接方法包括上述游戏客户端与服务器的连接方法的第一实施例中的步骤S101~S103,还进一步限定了:每个开发测试服务器所配置的版本信息按照设定的顺序记载在所述服务器信息中;
所述步骤S102具体包括:
根据设定的顺序,依次检查所述服务器信息中的开发测试服务器的版本信息;
将首个查找到的配置有与所述游戏程序相同的版本信息的开发测试服务器作为待连接的服务器。
在上述游戏客户端与服务器的连接方法的第二实施例中,虽然能够减少工程师在游戏开发检测阶段的工作量,但由于游戏客户端需要遍历所有开发测试服务器的版本信息,使得在查找过程中需要较长的时间,降低了游戏开发测试过程的效率。相比于上述游戏客户端与服务器的连接方法的第二实施例,本实施例的优点在于,客户端在查找配置有与所述游戏程序相同的版本信息的开发测试服务器时,将首个查找到的开发测试服务器作为待连接的服务器,减少了查找过程的时间,提高了整个游戏开发测试过程的效率。
在本实施例中,所述服务器信息可以用列表的形式表现。如图3所示,其是本发明提供的游戏客户端与服务器的连接方法的第三实施例的服务器信息的列表示意图。
在图3的列表中,第一列为各个开发测试服务器的名称,包括开发服务器、测试服务器、审核服务器以及封测服务器;第二列为各个开发测试服务器所配置的版本信息,在本实施例中为游戏程序的版本号;第三列为各个开发测试服务器的IP地址与端口信息。游戏客户端获取到所述列表时,根据第二列记载的版本号从上往下依次查找配置有游戏程序相同的版本号的开发测试服务器,将第一个查找到的开发测试服务器作为待连接的服务器,并根据第三列记载的对应的IP地址和端口信息连接到所述待连接的服务器。
相应地,本发明还提供了一种游戏客户端的第三实施例,所述游戏客户端包括上述游戏客户端的第一实施例中的信息获取模块101、服务器查找模块102以及服务器连接模块103,还进一步限定了:每个开发测试服务器所配置的版本信息按照设定的顺序记载在所述服务器信息中;
所述服务器查找模块102具体包括:
版本信息检查单元,用于根据设定的顺序,依次检查所述服务器信息中的开发测试服务器的版本信息;
执行单元,用于将首个查找到的配置有与所述游戏程序相同的版本信息的开发测试服务器作为待连接的服务器。
本实施例提供的游戏客户端用于执行上述游戏客户端与服务器的连接方法的第三实施例的所有方法步骤,其工作原理和有益效果一一对应,因而不再赘述。
参见图4,是本发明提供的游戏客户端与服务器的连接方法的第四实施例的流程示意图,该方法包括以下步骤:
S401,当启动游戏程序时,获取预先配置好的服务器信息;其中,所述游戏程序预先配置有版本信息;所述服务器信息记载了多个开发测试服务器的名称、每个所述开发测试服务器的IP地址与端口信息、以及预先为每个开发测试服务器配置的版本信息;所述版本信息包括游戏程序的版本号;所述服务器信息还记载了公测服务器的名称、IP地址与端口信息;
S402,根据所述服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器;
S403,当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,将所述公测服务器作为所述待连接的服务器;
S404,根据所述待连接的服务器的IP地址与端口信息,连接到所述待连接的服务器。
本实施例是基于上述游戏客户端与服务器的连接方法的第一实施例的进一步改进,所述服务器信息还包括公测服务器的名称、IP地址与端口信息,当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,将所述公测服务器作为所述待连接的服务器。因此,一个游戏程序需要公测时,可以改变服务器信息中所有开发测试服务器的版本信息使其与游戏程序的版本信息不匹配,游戏客户端不会连接到任何一个开发测试服务器而是连接到公测服务器,从而减少了工程师在将一个游戏公测时的工作量。
相应地,本发明还提供了一种游戏客户端的第四实施例。
如图5所示,其是本发明提供的游戏客户端的第四实施例的结构框图,包括:
信息获取模块401,用于当启动游戏程序时,获取预先配置好的服务器信息;其中,所述游戏程序预先配置有版本信息;所述服务器信息记载了多个开发测试服务器的名称、每个所述开发测试服务器的IP地址与端口信息、以及预先为每个开发测试服务器配置的版本信息;所述版本信息包括游戏程序的版本号;所述服务器信息还记载了公测服务器的IP地址与端口信息;
服务器查找模块402,用于根据所述服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器;
公测服选取模块403,用于当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,将所述公测服务器作为所述待连接的服务器;
服务器连接模块404,用于根据所述待连接的服务器的IP地址与端口信息,连接到所述待连接的服务器。
本实施例提供的游戏客户端用于执行上述游戏客户端与服务器的连接方法的第四实施例的所有方法步骤,其工作原理和有益效果一一对应,因而不再赘述。
参见图6,是本发明提供的游戏客户端与服务器的连接方法的第五实施例的流程示意图,该方法包括以下步骤:
S501,当启动游戏程序时,获取预先配置好的服务器信息;其中,所述游戏程序预先配置有版本信息;所述服务器信息记载了多个开发测试服务器的名称、每个所述开发测试服务器的IP地址与端口信息、以及预先为每个开发测试服务器配置的版本信息;所述版本信息包括游戏程序的版本号;所述服务器信息还记载了多个公测服务器的名称以及每个公测服务器的IP地址与端口信息;
S502,根据所述服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器;
S503,当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,从所述多个公测服务器中随机选取一个公测服务器作为待连接的服务器;
S504,根据所述待连接的服务器的IP地址与端口信息,连接到所述待连接的服务器。
在本实施例中,所述服务器信息也可以以列表的形式表现。如图7所示,其是本发明提供的游戏客户端与服务器的连接方法的第五实施例的服务器信息的列表示意图。相当于在图3的列表最下面的一行增加了多行公测服务器的信息。
本实施例是对上述游戏客户端与服务器的连接方法的第四实施例的进一步改进,所述服务器信息还包括多个公测服务器的名称以及每个公测服务器的IP地址与端口信息,当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,从所述多个公测服务器中随机选取一个公测服务器作为待连接的服务器。由于存在多个公测服务器,避免了所有游戏客户端连接到同一个公测服务器造成对服务器的压力过大;由于是随机选取的,因此可以实现每个公测服务器的负载均衡。
相应地,本发明还提供了一种游戏客户端的第五实施例。
如图8所示,其是本发明提供的游戏客户端的第五实施例的结构框图,包括:
信息获取模块501,用于当启动游戏程序时,获取预先配置好的服务器信息;其中,所述游戏程序预先配置有版本信息;所述服务器信息记载了多个开发测试服务器的名称、每个所述开发测试服务器的IP地址与端口信息、以及预先为每个开发测试服务器配置的版本信息;所述版本信息包括游戏程序的版本号;所述服务器信息还记载了多个公测服务器的名称以及每个公测服务器的IP地址与端口信息;
服务器查找模块502,用于根据所述服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器;
公测服选取模块503,用于当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,从所述多个公测服务器中随机选取一个公测服务器作为待连接的服务器;
服务器连接模块504,用于根据所述待连接的服务器的IP地址与端口信息,连接到所述待连接的服务器。
本实施例提供的游戏客户端用于执行上述游戏客户端与服务器的连接方法的第五实施例的所有方法步骤,其工作原理和有益效果一一对应,因而不再赘述。
参见图9,是本发明提供的游戏客户端与服务器的连接方法的第六实施例的流程示意图,该方法包括以下步骤:
S601,当启动游戏程序时,获取预先配置好的服务器信息;其中,所述游戏程序预先配置有版本信息;所述服务器信息记载了多个开发测试服务器的名称、每个所述开发测试服务器的IP地址与端口信息、以及预先为每个开发测试服务器配置的版本信息;所述版本信息包括游戏程序的版本号;所述服务器信息还记载了多个公测服务器的名称以及每个公测服务器的IP地址与端口信息;
S602,根据所述服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器;
S603,当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,判断是否存在与所述多个公测服务器中的一个公测服务器的连接记录;
S604,当存在所述连接记录时,将所述连接记录所记载的连接过的公测服务器作为待连接的服务器;
S605,当不存在所述连接记录时,从所述多个公测服务器中随机选取一个公测服务器作为待连接的服务器,并存储与所选取的公测服务器的连接记录;
S606,根据所述待连接的服务器的IP地址与端口信息,连接到所述待连接的服务器。
本实施例是基于上述游戏客户端与服务器的连接方法的第五实施例的进一步改进,所述服务器信息还记载了多个公测服务器的名称以及每个公测服务器的IP地址与端口信息,当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,判断是否存在与所述多个公测服务器中的一个公测服务器的连接记录;当存在所述连接记录时,将所述连接记录所记载的连接过的公测服务器作为待连接的服务器;当不存在所述连接记录时,从所述多个公测服务器中随机选取一个公测服务器作为待连接的服务器,并存储与所选取的公测服务器的连接记录。即公测时游戏客户端保存第一次启动时所连的随机选取的公测服务器信息,然后之后的每次连接都连去同一公测服务器。这是因为一般用户在服务器登陆都需要从数据库拉取用户信息,考虑到网络的偶断性,如果玩家每次都重新随机分配到其他服务器,则可能不断重复读取数据库信息,这样将会给服务器带来额外的压力。如果游戏客户端能保存第一次启动选取的服务器信息,就可以断线后再登陆同一服务器从缓存中读取之前的用户信息,避免重复读取数据库。
相应地,本发明还提供了一种游戏客户端的第六实施例。
如图10所示,其是本发明提供的游戏客户端的第六实施例的结构框图,包括:
信息获取模块601,用于当启动游戏程序时,获取预先配置好的服务器信息;其中,所述游戏程序预先配置有版本信息;所述服务器信息记载了多个开发测试服务器的名称、每个所述开发测试服务器的IP地址与端口信息、以及预先为每个开发测试服务器配置的版本信息;所述版本信息包括游戏程序的版本号;所述服务器信息还记载了多个公测服务器的名称以及每个公测服务器的IP地址与端口信息;
服务器查找模块602,用于根据所述服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器;
连接记录判断模块603,用于当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,判断是否存在与所述多个公测服务器中的一个公测服务器的连接记录;
第一选取模块604,用于当存在所述连接记录时,将所述连接记录所记载的连接过的公测服务器作为待连接的服务器;
第二选取模块605,用于当不存在所述连接记录时,从所述多个公测服务器中随机选取一个公测服务器作为待连接的服务器,并存储与所选取的公测服务器的连接记录;
服务器连接模块606,用于根据所述待连接的服务器的IP地址与端口信息,连接到所述待连接的服务器。
本实施例提供的游戏客户端用于执行上述游戏客户端与服务器的连接方法的第六实施例的所有方法步骤,其工作原理和有益效果一一对应,因而不再赘述。
作为对上述游戏客户端与服务器的连接方法或者上述游戏客户端的任一实施例的改进,所述版本信息还包括游戏程序的渠道名称。即所述版本信息同时包括游戏程序的版本号以及渠道名称,只有版本号以及渠道名称都相同时,才满足版本信息相同这个条件。对于安卓游戏来说,其对应的渠道可能会有多个,因此如果按照上述的服务器信息配置将可能导致部分已过审安卓渠道需要更改服务器信息的IP从审核服务器指向公测服务器,但如果同时还有部分渠道仍在审核当中,这将会造成公测服务器和审核服务器数据互通的危险,因此在服务器信息增加一个渠道名称,游戏客户端的匹配逻辑更改为除了版本号外,还需要结合渠道名称进行匹配。这样我们就可以对单个渠道的服务器指向进行控制。
例如,某个游戏将通过A和B渠道进行发行,因此将需要提交两个独立的渠道客户端给A和B进行审核,但是有可能出现A已经过审可以发行,但是B还在审核中的状态,因此,通过在服务器信息增加渠道名称并把匹配规则除了版本号外再增加渠道名称,这样就可以对某个单独的渠道进行控制,也就是说我们可以让过审的A客户端指向公测服务器的同时保持B的客户端仍然指向审核服,做到数据隔离的效果。
相比于现有技术,本发明提供的游戏客户端与服务器的连接方法的有益效果在于,将游戏程序的版本信息作为定位到某个服务器的信息,客户端根据预先配置的服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器。从而无需对游戏程序本身作任何改变,只要修改服务器信息中记载的服务器的版本信息,就能够改变游戏客户端所连接的服务器,减少了工程师在游戏开发测试阶段的工作量。本发明还进一步在服务器信息中加入公测服务器的信息,使得能够在游戏进入公测阶段能够自动连接到公测服务器,进一步减少了工程师在游戏开发测试阶段的工作量。同时,本发明还提供了一种用于执行上述游戏客户端与服务器的连接方法的游戏客户端。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
Claims (16)
1.一种游戏客户端与服务器的连接方法,其特征在于,包括:
当启动游戏程序时,获取预先配置好的服务器信息;其中,所述游戏程序预先配置有版本信息;所述服务器信息记载了多个开发测试服务器的名称、每个所述开发测试服务器的IP地址与端口信息、以及预先为每个开发测试服务器配置的版本信息;所述版本信息包括游戏程序的版本号;
根据所述服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器;
根据所述待连接的服务器的IP地址与端口信息,连接到所述待连接的服务器。
2.如权利要求1所述的游戏客户端与服务器的连接方法,其特征在于,每个开发测试服务器配置有不同的优先级;
所述根据所述服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器,包括:
检查所述服务器信息中所有开发测试服务器的版本信息;
当查找到一个配置有与所述游戏程序相同的版本信息的开发测试服务器时,将查找到的开发测试服务器作为待连接的服务器;
当查找到多个配置有与所述游戏程序相同的版本信息的开发测试服务器时,将查找到的配置有最高优先级的开发测试服务器作为待连接的服务器。
3.如权利要求1所述的游戏客户端与服务器的连接方法,其特征在于,每个开发测试服务器所配置的版本信息按照设定的顺序记载在所述服务器信息中;
所述根据所述服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器,包括:
根据设定的顺序,依次检查所述服务器信息中的开发测试服务器的版本信息;
将首个查找到的配置有与所述游戏程序相同的版本信息的开发测试服务器作为待连接的服务器。
4.如权利要求1或3任一项所述的游戏客户端与服务器的连接方法,其特征在于,所述服务器信息还记载了公测服务器的名称、IP地址与端口信息;
所述游戏客户端与服务器的连接方法还包括:当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,将所述公测服务器作为所述待连接的服务器。
5.如权利要求1或3任一项所述的游戏客户端与服务器的连接方法,其特征在于,所述服务器信息还记载了多个公测服务器的名称以及每个公测服务器的IP地址与端口信息;
所述游戏客户端与服务器的连接方法还包括:当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,从所述多个公测服务器中随机选取一个公测服务器作为待连接的服务器。
6.如权利要求1或3任一项所述的游戏客户端与服务器的连接方法,其特征在于,所述服务器信息还记载了多个公测服务器的名称以及每个公测服务器的IP地址与端口信息;
所述游戏客户端与服务器的连接方法还包括:
当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,判断是否存在与所述多个公测服务器中的一个公测服务器的连接记录;
当存在所述连接记录时,将所述连接记录所记载的连接过的公测服务器作为待连接的服务器;
当不存在所述连接记录时,从所述多个公测服务器中随机选取一个公测服务器作为待连接的服务器,并存储与所选取的公测服务器的连接记录。
7.如权利要求1~3任一项所述的游戏客户端与服务器的连接方法,其特征在于,所述多个开发测试服务器包括开发服务器、测试服务器与审核服务器。
8.如权利要求1~3任一项所述的游戏客户端与服务器的连接方法,其特征在于,所述版本信息还包括游戏程序的渠道名称。
9.一种游戏客户端,其特征在于,包括:
信息获取模块,用于当启动游戏程序时,获取预先配置好的服务器信息;其中,所述游戏程序预先配置有版本信息;所述服务器信息记载了多个开发测试服务器的名称、每个所述开发测试服务器的IP地址与端口信息、以及预先为每个开发测试服务器配置的版本信息;所述版本信息包括游戏程序的版本号;
服务器查找模块,用于根据所述服务器信息,查找配置有与所述游戏程序相同的版本信息的开发测试服务器,将查找到的开发测试服务器作为待连接的服务器;
服务器连接模块,用于根据所述待连接的服务器的IP地址与端口信息,连接到所述待连接的服务器。
10.如权利要求9所述的游戏客户端,其特征在于,每个开发测试服务器配置有不同的优先级;
所述服务器查找模块包括:
版本信息检查单元,用于检查每个开发测试服务器的版本信息;
第一执行单元,用于当查找到一个配置有与所述游戏程序相同的版本信息的开发测试服务器时,将查找到的开发测试服务器作为待连接的服务器;
第二执行单元,用于当查找到多个配置有与所述游戏程序相同的版本信息的开发测试服务器时,将查找到的配置有最高优先级的开发测试服务器作为待连接的服务器。
11.如权利要求9所述的游戏客户端,其特征在于,每个开发测试服务器所配置的版本信息按照设定的顺序记载在所述服务器信息中;
所述服务器查找模块包括:
版本信息检查单元,用于根据设定的顺序,依次检查所述服务器信息中的开发测试服务器的版本信息;
执行单元,用于将首个查找到的配置有与所述游戏程序相同的版本信息的开发测试服务器作为待连接的服务器。
12.如权利要求9~11任一项所述的游戏客户端,其特征在于,所述服务器信息还记载了公测服务器的名称、IP地址与端口信息;
所述游戏客户端还包括公测服选取模块;所述公测服选取模块用于当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,将所述公测服务器作为所述待连接的服务器。
13.如权利要求9~11任一项所述的游戏客户端,其特征在于,所述服务器信息还记载了多个公测服务器的名称以及每个公测服务器的IP地址与端口信息;
所述游戏客户端还包括公测服选取模块;所述公测服选取模块用于当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,从所述多个公测服务器中随机选取一个公测服务器作为待连接的服务器。
14.如权利要求9~11任一项所述的游戏客户端,其特征在于,所述服务器信息还记载了多个公测服务器的名称以及每个公测服务器的IP地址与端口信息;
所述游戏客户端还包括:
连接记录判断模块,用于当查找不到配置有与所述游戏程序相同的版本信息的开发测试服务器时,判断是否存在与所述多个公测服务器中的一个公测服务器的连接记录;
第一选取模块,用于当存在所述连接记录时,将所述连接记录所记载的连接过的公测服务器作为待连接的服务器;
第二选取模块,用于当不存在所述连接记录时,从所述多个公测服务器中随机选取一个公测服务器作为待连接的服务器,并存储与所选取的公测服务器的连接记录。
15.如权利要求9~11任一项所述的游戏客户端,其特征在于,所述多个开发测试服务器包括开发服务器、测试服务器与审核服务器。
16.如权利要求9~11任一项所述的游戏客户端,其特征在于,所述版本信息还包括游戏程序的渠道名称。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510830611.3A CN105516082B (zh) | 2015-11-25 | 2015-11-25 | 一种游戏客户端与服务器的连接方法以及游戏客户端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510830611.3A CN105516082B (zh) | 2015-11-25 | 2015-11-25 | 一种游戏客户端与服务器的连接方法以及游戏客户端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105516082A true CN105516082A (zh) | 2016-04-20 |
CN105516082B CN105516082B (zh) | 2019-01-22 |
Family
ID=55723720
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510830611.3A Active CN105516082B (zh) | 2015-11-25 | 2015-11-25 | 一种游戏客户端与服务器的连接方法以及游戏客户端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105516082B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105871640A (zh) * | 2016-06-07 | 2016-08-17 | 腾讯科技(深圳)有限公司 | 关卡配置数据配置方法、游戏服务器及系统 |
CN106512396A (zh) * | 2016-12-06 | 2017-03-22 | 网易(杭州)网络有限公司 | 游戏中的交互处理方法、交互处理装置以及服务器系统 |
CN107332911A (zh) * | 2017-07-03 | 2017-11-07 | 珠海金山网络游戏科技有限公司 | 一种基于客户端版本号分配可登陆服务器的方法和装置 |
CN108717363A (zh) * | 2018-05-25 | 2018-10-30 | 广州博冠信息科技有限公司 | 启动引擎的方法、装置、存储介质及电子装置 |
CN109408397A (zh) * | 2018-11-13 | 2019-03-01 | 苏州大禹网络科技有限公司 | 一种游戏预发布系统及方法 |
CN110354493A (zh) * | 2019-08-22 | 2019-10-22 | 腾讯科技(深圳)有限公司 | 接入控制方法、装置、服务器及存储介质 |
CN112749016A (zh) * | 2021-01-25 | 2021-05-04 | 杭州迪普科技股份有限公司 | 一种信息获取的方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080244532A1 (en) * | 2007-03-28 | 2008-10-02 | International Business Machines Corporation | Testing System, and a Method and Computer Program For Testing A System Management Program |
CN104239207A (zh) * | 2014-09-17 | 2014-12-24 | 广州华多网络科技有限公司 | 调试应用程序的方法及装置 |
CN104820639A (zh) * | 2015-04-28 | 2015-08-05 | 贵州中科汉天下信息技术有限公司 | 一种移动终端软件公测方法 |
US9185170B1 (en) * | 2012-12-31 | 2015-11-10 | Juniper Networks, Inc. | Connectivity protocol delegation |
-
2015
- 2015-11-25 CN CN201510830611.3A patent/CN105516082B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080244532A1 (en) * | 2007-03-28 | 2008-10-02 | International Business Machines Corporation | Testing System, and a Method and Computer Program For Testing A System Management Program |
US9185170B1 (en) * | 2012-12-31 | 2015-11-10 | Juniper Networks, Inc. | Connectivity protocol delegation |
CN104239207A (zh) * | 2014-09-17 | 2014-12-24 | 广州华多网络科技有限公司 | 调试应用程序的方法及装置 |
CN104820639A (zh) * | 2015-04-28 | 2015-08-05 | 贵州中科汉天下信息技术有限公司 | 一种移动终端软件公测方法 |
Non-Patent Citations (1)
Title |
---|
段哲; 韩顺锋; 黄巍; 丁忠义: "客户端自动查找并连接服务器端的实现", 《舰船电子工程》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105871640A (zh) * | 2016-06-07 | 2016-08-17 | 腾讯科技(深圳)有限公司 | 关卡配置数据配置方法、游戏服务器及系统 |
CN105871640B (zh) * | 2016-06-07 | 2019-07-05 | 腾讯科技(深圳)有限公司 | 关卡配置数据配置方法、游戏服务器及系统 |
CN106512396A (zh) * | 2016-12-06 | 2017-03-22 | 网易(杭州)网络有限公司 | 游戏中的交互处理方法、交互处理装置以及服务器系统 |
CN107332911A (zh) * | 2017-07-03 | 2017-11-07 | 珠海金山网络游戏科技有限公司 | 一种基于客户端版本号分配可登陆服务器的方法和装置 |
CN108717363A (zh) * | 2018-05-25 | 2018-10-30 | 广州博冠信息科技有限公司 | 启动引擎的方法、装置、存储介质及电子装置 |
CN108717363B (zh) * | 2018-05-25 | 2021-07-27 | 广州博冠信息科技有限公司 | 启动引擎的方法、装置、存储介质及电子装置 |
CN109408397A (zh) * | 2018-11-13 | 2019-03-01 | 苏州大禹网络科技有限公司 | 一种游戏预发布系统及方法 |
CN110354493A (zh) * | 2019-08-22 | 2019-10-22 | 腾讯科技(深圳)有限公司 | 接入控制方法、装置、服务器及存储介质 |
CN110354493B (zh) * | 2019-08-22 | 2022-03-01 | 腾讯科技(深圳)有限公司 | 接入控制方法、装置、服务器及存储介质 |
CN112749016A (zh) * | 2021-01-25 | 2021-05-04 | 杭州迪普科技股份有限公司 | 一种信息获取的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105516082B (zh) | 2019-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105516082A (zh) | 一种游戏客户端与服务器的连接方法以及游戏客户端 | |
CN105068929B (zh) | 测试脚本生成方法和装置、测试方法、测试装置以及测试系统 | |
Li et al. | A performance comparison of SQL and NoSQL databases | |
CN107957957A (zh) | 测试用例的获取方法和装置 | |
CN103714097B (zh) | 一种访问数据库的方法和装置 | |
US8739131B2 (en) | Completing functional testing | |
JP2017151970A (ja) | サービスリクエストを処理するための方法及び装置 | |
CN104216724B (zh) | 一种网络应用程序接口升级的方法及系统 | |
US20060146694A1 (en) | Program and method for verifying reliability of network | |
CN103473171A (zh) | 一种基于函数调用路径的覆盖率动态跟踪方法及装置 | |
EP3185027B1 (en) | Information processing method and device and computer storage medium | |
CN102023861A (zh) | 测试脚本及测试套件生成的方法和系统 | |
CN112035376A (zh) | 一种生成覆盖率报告的方法、装置、设备及存储介质 | |
CN106603296A (zh) | 日志的处理方法及装置 | |
WO2011106110A1 (en) | System and method for object migration waves | |
CN107080945B (zh) | 测试游戏中人工智能行为的方法、装置及电子设备 | |
US10572371B2 (en) | Generating valid use cases from a parsed configuration file describing use case options | |
CN102426551A (zh) | 测试数据筛选方法及装置、测试数据构造方法及装置 | |
CN103577316B (zh) | 脚本自动修复的方法和装置 | |
CN104750612B (zh) | 对文件操作进行测试方法及装置 | |
CN107133244A (zh) | 一种数据库迁移的测试方法和装置 | |
CN106815140A (zh) | 一种接口测试方法和装置 | |
CN112068852A (zh) | 基于国产服务器的开源软件安装方法、系统及设备和介质 | |
CN103810094B (zh) | 一种测试案例的执行方法、装置和测试工具 | |
CN107193747A (zh) | 代码测试方法、装置和计算机设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |