本发明涉及网络服务器通信技术领域,尤其涉及一种均衡游戏服务器负载的方法。
背景技术:
随着目前市场上网络游戏的发展,游戏玩家的规模不断壮大,对服务器带来的压力也越来越大,单一服务器无法满足游戏的运行,通常游戏运营商会提供多组服务器,不同玩家登陆不同的服务器以确保全部玩家的游戏需求,但是这种方法无法使服务器资源得到合理利用,容易造成服务器资源的浪费,或者造成个别服务器负载过大,影响游戏体验。
技术实现要素:
本发明所要解决的技术问题是克服现有技术中存在的不足,提供一种既能防止服务器负载过重、又能防止服务器资源浪费的均衡游戏服务器负载的方法。
本发明是通过以下技术方案予以实现:
一种均衡游戏服务器负载的方法,其特征在于,包括以下步骤:
维护服务器列表,该列表中包含当前提供游戏服务的多个服务器信息表,
实时监测服务器列表中多个服务器的负载水平,
当任一服务器的负载水平大于第一阈值时,将该服务器信息列入超载服务器列表,当任一服务器的负载水平小于第一阈值时,将该服务器信息列入轻载服务器列表,
从轻载服务器列表中选择任意一个服务器信息发送给客户端,供客户端与该服务器建立通信连接。
优选的,当任意两个服务器的负载水平之和小于第一阈值时,将其中一个服务器的负载转移到另一个服务器上。
优选的,服务器的负载水平包括与该服务器建立连接的客户端数量。
优选的,服务器的负载水平为该服务器的cpu利用率、内存利用率以及网络宽带占用率中的任意一项。
本发明的有益效果是:
通过本方法既可以避免个别服务器负载过重影响游戏体验,又可以当服务器负载较低时,释放另一个服务器上的资源,从而实现服务器间灵活的用户分配和资源管理。
附图说明
图1是本发明的原理结构示意图。
具体实施方式
为了使本技术领域的技术人员更好地理解本发明的技术方案,下面结合附图和最佳实施例对本发明作进一步的详细说明。
如图所示,本发明包括以下步骤:
维护服务器列表,该列表中包含当前提供游戏服务的多个服务器信息表,
实时监测服务器列表中多个服务器的负载水平,
当任一服务器的负载水平大于第一阈值时,将该服务器信息列入超载服务器列表,当任一服务器的负载水平小于第一阈值时,将该服务器信息列入轻载服务器列表,超载服务器列表中的服务器信息不再发送给客户端,防止服务器负载过高,影响游戏体验,随着超载服务器负载水平的降低,实时监测会刷新负载水平,从而将其重新列入轻载服务器列表,
从轻载服务器列表中选择任意一个服务器信息发送给客户端,供客户端与该服务器建立通信连接,能够保证玩家良好的游戏体验,防止个别服务器负载过高。
优选的,当任意两个服务器的负载水平之和小于第一阈值时,将其中一个服务器的负载转移到另一个服务器上,当服务器负载较低时,可以释放另一个服务器上的资源,从而实现服务器间灵活的用户分配和资源管理。
优选的,服务器的负载水平包括与该服务器建立连接的客户端数量,连接的客户端数量越多,说明服务器负载水平越高。
优选的,服务器的负载水平为该服务器的cpu利用率、内存利用率以及网络宽带占用率中的任意一项,cpu利用率、内存利用率以及网络宽带占用率越高,说明服务器负载水平越高。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。