构建可叠加服务器的方法以及服务器系统的制作方法

文档序号:7805857阅读:296来源:国知局
专利名称:构建可叠加服务器的方法以及服务器系统的制作方法
技术领域
本发明涉及服务器设计领域,尤其涉及一种构建可叠加服务器的方法以及一种服务器系统。
背景技术
在当今社会,效率决定一切。对于服务运营商来说怎么能快速的响应市场变化、针对不同的需求迅速开展相应的业务是不得不考虑的问题。我们知道,任何一台服务器的性能都是有限的,当用户量不断增加的时候会造成用户请求响应越来越慢,甚至不能返回响应结果。这时候,作为服务运营商来讲,如何使用最少的成本来提供最优质的服务,即如何利用现有的资源来提供业务服务,成为亟待解决的问题。现有技术中,当用户量增加到一变程度时通常采用动态添加新服务器的方法来增强处理能力。但是,一方面添加服务器的办法本身直接增加了硬件成本,另一方面,由于每台服务器都需要申请外部IP和带宽,因此在添加新的服务器之后,势必将导致运营成本的大幅增加。

发明内容
为解决上述问题,本发明提供一种构建可叠加服务器的方法以及服务器系统,能够减少运营成本。为实现上述目的,本发明采用如下的技术方案一种构建可叠加服务器的方法,包括以下步骤业务服务器接连到数据分流处理器后,发送注册信息给数据分流处理器;所述数据分流处理器接收到业务服务器的注册信息后记录该业务服务器,标记该业务服务器当前的负荷状态;用户发送数据处理请求给所述数据分流处理器,所述数据分流处理器接收到所述数据处理请求后,根据当前已注册的各业务服务器的负荷状态选择其中一个业务服务器并将所述数据处理请求转发到该业务服务器,并更新该业务服务器的负荷状态;业务服务器接收到所述数据处理请求后进行逻辑运算处理,并返回处理结果给所述数据分流处理器,所述数据分流处理器接收到所述处理结果后更新业务服务器的负荷状态,然后将所述处理结果转发给用户。另外本发明还提供一种服务器系统,包括一个以上的业务服务器以及与各业务服务器分别相连接的数据分流处理器;所述业务服务器用于接连到数据分流处理器后发送注册信息给所述数据分流处理器;以及接收到数据处理请求后进行逻辑运算处理,并返回处理结果给所述数据分流处理器;所述数据分流服务器用于接收到业务服务器的注册信息后记录该业务服务器,标记该业务服务器当前的负荷状态,当接收到用户发送的数据处理请求后,根据当前已注册的各业务服务器的负荷状态选择其中一个业务服务器并将所述数据处理请求转发到该业务服务器,并更新该业务服务器的负荷状态;以及接收到所述处理结果后更新业务服务器的负荷状态,然后将所述处理结果转发给用户。由以上方案可以看出,本发明的构建可叠加服务器的方法以及服务器系统,当需要添加新的业务服务器时,首先由业务服务器向数据分流处理器注册,然后用户就可以通过数据分流处理器进行请求并由数据分流处理器根据已注册的各个业务服务器的负荷状态进行动态调用,即所有业务服务器都是从数据分流处理器上获得用户请求,所以当整个系统负荷超载需要添加一台新的业务服务器时,只要在数据分流处理器上加上新增加的业务服务器配置即可,不需要另外再为新添加的业务服务器申请外部IP及带宽,从而有效节省了运营成本,合理地利用了现有资源;而且,本发明的服务器系统中能够根据业务服务器的实时工作状态来选择业务服务器进行请求,这样可以有效节约资源,避免不必要的资源浪费。


图1为本发明一种构建可叠加服务器的方法流程示意图;图2为本发明一种服务器系统的结构示意图;图3为实施例中数据分流处理器的结构示意图。
具体实施例方式本发明提供一种构建可叠加服务器的方法以及服务器系统,能够解决现有技术中由于添加新的服务器所导致的增加额外的运营成本的问题。下面结合附图对本发明的具体实施例作进一步描述。如图1所示,本发明的构建可叠加服务器的方法,包括以下步骤步骤Si,当有新业务出现,并且需要添加新的业务服务器时,首先由该新的业务服务器接连到数据分流处理器,并发送注册信息给数据分流处理器。所述注册信息中可以包括该业务服务器的标识、所处理的业务类型、处理能力信息等描述信息。步骤S2,所述数据分流处理器接收到业务服务器的注册信息后记录该业务服务器,标记该业务服务器当前的负荷状态。事实上本步骤中数据分流处理器还需要根据注册信息中所包含的业务类型信息判断该业务类型是否已经存在数据分流处理器中,如果不存在,还需要在数据分流处理器添加该业务类型。所述这记录业务服务器的过程具体可以为如下在数据分流处理器中划分出若干个业务存储块,且每一个业务存储块均对应一个业务服务器,为方便起见我们可以将这些
业务存储块进行命名1、2、3、4、5......所述的记录业务服务器即指的是将业务服务器的
信息保存到对应的业务存储块中。步骤S3,用户发送数据处理请求给所述数据分流处理器,所述数据分流处理器接收到所述数据处理请求后,根据当前已注册的各业务服务器的负荷状态选择其中一个业务服务器并将所述数据处理请求转发到该业务服务器,并更新该业务服务器的负荷状态。上述根据当前各业务服务器的负荷状态选择其中一个业务服务器的过程具体可以包括如下根据当前各业务服务器的负荷状态,从各业务服务器中选择最优状态下的业务服务器。此处的最优指的是同等情况下,该业务服务器的负荷最少。现有技术中由于用户并不能实时了解各业务服务器的状态,因此也就无法实时选择最优状态下的业务服务器来进行请求,而本发明通过数据分流处理器是可以知道当前各业务服务器的负荷状态信息的。步骤S4,业务服务器接收到所述数据处理请求后进行逻辑运算处理(该处理过程为公知技术,本发明不作赘述),并返回处理结果给所述数据分流处理器,所述数据分流处理器接收到所述处理结果后更新业务服务器的负荷状态,以为下次分配做准备,然后将所述处理结果转发给用户。作为一个较好的实施例,本发明的方法还可以包括步骤S5 当业务负荷降低到预定的阈值或不再需要提供特定业务的服务时,发送注销信息给所述数据分流处理器,所述数据分流处理器根据该注销信息清除指定的业务服务器信息。本发明的方法对于自主运营特别是低成本运营是非常有益的首先,使用本发明的方法,所有业务服务器都可以动态增减,所以当监控到运营负荷过大的时候,只需把业务部署到临时的一台业务服务器上,并连接到数据分流处理器上既可,甚至在没有采购到合适服务器的时候可以先把业务部署到PC机上来增加系统的处理能力,这样能够合理利用现有资源;另外,当业负荷很低的时候我们可以注销掉一部分服务器,而不至于浪费资源;其次,如果我们有多种业务运营时,无须针对每种业务建立通讯机制、申请外部ip 及带宽等,只需要把相应的业务服务器连接到数据分流处理器上,那么数据分流处理器就会对相应业务数据进行转发,节省了运营成本;另外,当我们需要开发新业务的时候,由于在整个系统中业务服务器只连接到数据分流处理器上,所以开发中可以不用考虑通讯模型低层通讯服务部分而只要把精力用在业务处理逻辑及优化上即可。与上述一种构建可叠加服务器的方法对应的,本发明还提供一种服务器系统,如图2所示,包括一个以上的业务服务器以及与各业务服务器分别相连接的数据分流处理器;所述业务服务器用于接连到数据分流处理器后发送注册信息给所述数据分流处理器,所述注册信息中包括该业务服务器的标识、所处理的业务类型、处理能力信息等描述信息;以及接收到数据处理请求后进行逻辑运算处理,并返回处理结果给所述数据分流处理器;所述数据分流服务器用于接收到业务服务器的注册信息后记录该业务服务器,标记该业务服务器当前的负荷状态,当接收到用户发送的数据处理请求后,根据当前已注册的各业务服务器的负荷状态选择其中一个业务服务器并将所述数据处理请求转发到该业务服务器,并更新该业务服务器的负荷状态;以及接收到所述处理结果后更新业务服务器的负荷状态,然后将所述处理结果转发给用户。作为一个较好的实施例,如图3所示,所述数据分流处理器可以进一步的包括业务管理模块以及数据分流模块所述业务管理模块用于接受业务服务器的注册信息或注销信息,根据所述注册信息或注销信息进行相应处理(即若接受的是注册信息,则根据该注册信息将业务服务器进行注册;若接受的是注销信息,则根据该注销信息将指定的业务服务器进行注销),并实时监测各业务服务器,当各业务服务器的工作状态发生变化时及时更新业务服务器的负荷状态;所述数据分流模块用于接收用户的数据处理请求,查询所述业务管理模块中存储的当前各业务服务器的负荷状态,并根据该负荷状态选择其中一个业务服务器并将所述数据处理请求转发到该业务服务器;以及接收所述业务服务器返回的处理结果并转发给用户。上述的业务管理模块中业务服务器的工作状态的变化包括一、业务服务服务器接收到用户数据处理请求并开始进行数据处理,此时需要更新一次该业务服务器的负荷状态(+1);二、业务服务器完成数据处理请求并返回了处理结果给所述数据分流服务器,些时需要再次更新该业务服务器的负荷状态(-1)。上述根据当前各业务服务器的负荷状态选择其中一个业务服务器是指从各业务服务器中选择最优状态下的业务服务器。综上可知,业务管理模块主要提供了三个接口 一、接受业务服务器注册及注销; 二、返回当前各个业务服务器状态;三、返回特定业务当前最优的服务器。另外,数据分流模块主要用于监听用户连接并把用户数据分发给业务服务器进行处理,以及把处理结果返回给用户;它主要也是提供三个接口 一、接受用户请求;二、接受新开业务请求;三、接受关闭业务请求。例如有一个网络游戏业务服务器连接上数据分流处理器,那么业务管理模块会记录该服务器并请求分流服务器打开相应的监听端口接受用户请求并进行数据转发;如果我们不再运营某个业务的时候,只需要把相应的所有业务服务器断开,那么业务管理模块就会调用数据分流模块关闭业务的接口通知数据分流模块关闭相应的监听端口,不再接受该业务的请求,即实现了关闭业务的功能。优选的,所述业务管理模块中还可以包括第一预警模块,该第一预警模块用于当判断得出所有业务服务器的负荷状态均已达到预设的第一阈值时进行预警,并通知用户动态增加新的业务服务器。出现这种预警的情况说明该服务器系统中所有的业务服务器均已达到处理的上限,此时如果还有新的用户请求则将不能再进行处理,因为用户量已经超过了所有业务服务器的负荷,则此时可以通过动态增加新的业务服务器来分担数据处理。相比于现有技术中直接添加新业务服务器的做法,本发明由于增加了数据分流处理器,因此不需要修改用户客户端,也不需要重新启动整个系统,可以给用户带来较好的体验。优选的,所述业务管理模块还可以包括第二预警模块,所述第二预警模块用于当判断得出业务负荷降低到预设的第二阈值或不再需要提供特定业务的服务时,发送注销信息给所述业务管理模块,所述业务管理模块根据该注销信息将指定的业务服务器从数据分流处理器中注销,具体为清除数据分流处理器中所保存的业务服务器信息即可。本发明在业务服务器的基础上增加了一个数据分流处理器,一般意义上,如果数据在传输的过程中增加了一个环节,那么必然会额外增加响应时间。为解决上述问题,本发明采取将所述业务服务器与所述数据分流处理器设置在同一局域网中的办法,由于众所周知的,局域网内数据传输的速度是非常快的,相对于大量业务逻辑数据处理来说这段时间基本上可以忽略不计,因此可以不用太多考虑这部分所额外增加的响应时间。
为更进一步的减少上述额外增加的响应时间,除了将业务服务器与数据分流处理器设置在同一局域网中之外,还可以将所述业务服务器与所述数据分流处理器之间通过 socket或管道的方式相连接。通过socket或管道的方式转发数据所消耗的时间比较少,因此可以进一步减少上述额外增加的响应时间。通过以上方案可以看出,本发明的构建可叠加服务器的方法以及服务器系统,当需要添加新的业务服务器时,首先由业务服务器向数据分流处理器注册,然后用户就可以通过数据分流处理器进行请求并由数据分流处理器根据已注册的各个业务服务器的负荷状态进行动态调用,即所有业务服务器都是从数据分流处理器上获得用户请求,所以当整个系统负荷超载需要添加一台新的业务服务器时,只要在数据分流处理器上加上新增加的业务服务器配置即可,不需要另外再为新添加的业务服务器申请外部IP及带宽,从而有效节省了运营成本,合理地利用了现有资源;而且,本发明的服务器系统中能够根据业务服务器的实时工作状态来选择业务服务器进行请求,这样可以有效节约资源,避免不必要的资源浪费。以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明的权利要求保护范围之内。
权利要求
1.一种构建可叠加服务器的方法,其特征在于,包括以下步骤业务服务器接连到数据分流处理器后,发送注册信息给数据分流处理器;所述数据分流处理器接收到业务服务器的注册信息后记录该业务服务器,标记该业务服务器当前的负荷状态;用户发送数据处理请求给所述数据分流处理器,所述数据分流处理器接收到所述数据处理请求后,根据当前已注册的各业务服务器的负荷状态选择其中一个业务服务器并将所述数据处理请求转发到该业务服务器,并更新该业务服务器的负荷状态;业务服务器接收到所述数据处理请求后进行逻辑运算处理,并返回处理结果给所述数据分流处理器,所述数据分流处理器接收到所述处理结果后更新业务服务器的负荷状态, 然后将所述处理结果转发给用户。
2.根据权利要求1所述的构建可叠加服务器的方法,其特征在于,还包括步骤当业务负荷降低到预定的阈值或不再需要提供特定业务的服务时,发送注销信息给所述数据分流处理器,所述数据分流处理器根据该注销信息清除指定的业务服务器信息。
3.根据权利要求1所述的构建可叠加服务器的方法,其特征在于,所述注册信息中包括该业务服务器的标识、所处理的业务类型、处理能力信息。
4.根据权利要求2所述的构建可叠加服务器的方法,其特征在于,所述根据当前各业务服务器的负荷状态选择其中一个业务服务器的过程具体包括根据当前各业务服务器的负荷状态,从各业务服务器中选择最优状态下的业务服务器。
5.一种服务器系统,其特征在于,包括一个以上的业务服务器以及与各业务服务器分别相连接的数据分流处理器;所述业务服务器用于接连到数据分流处理器后发送注册信息给所述数据分流处理器; 以及接收到数据处理请求后进行逻辑运算处理,并返回处理结果给所述数据分流处理器;所述数据分流服务器用于接收到业务服务器的注册信息后记录该业务服务器,标记该业务服务器当前的负荷状态,当接收到用户发送的数据处理请求后,根据当前已注册的各业务服务器的负荷状态选择其中一个业务服务器并将所述数据处理请求转发到该业务服务器,并更新该业务服务器的负荷状态;以及接收到所述处理结果后更新业务服务器的负荷状态,然后将所述处理结果转发给用户。
6.根据权利要求5所述的服务器系统,其特征在于,所述数据分流处理器包括业务管理模块以及数据分流模块;所述业务管理模块用于接受业务服务器的注册信息或注销信息,根据所述注册信息或注销信息进行相应处理,并实时监测各业务服务器,当各业务服务器的工作状态发生变化时及时更新业务服务器的负荷状态;所述数据分流模块用于接收用户的数据处理请求,查询所述业务管理模块中存储的当前各业务服务器的负荷状态,并根据该负荷状态选择其中一个业务服务器并将所述数据处理请求转发到该业务服务器;以及接收所述业务服务器返回的处理结果并转发给用户。
7.根据权利要求6所述的服务器系统,其特征在于,所述业务管理模块包括第一预警模块,所述第一预警模块用于当判断得出所有业务服务器的负荷状态均已达到预设的第一阈值时进行预警,并通知用户动态增加新的业务服务器。
8.根据权利要求6所述的服务器系统,其特征在于,所述业务管理模块包括第二预警模块,所述第二预警模块用于当判断得出业务负荷降低到预设的第二阈值或不再需要提供特定业务的服务时,发送注销信息给所述业务管理模块,所述业务管理模块根据该注销信息清除指定的业务服务器信息。
9.根据权利要求5-8任意一项所述的服务器系统,其特征在于,所述业务服务器与所述数据分流处理器设置在同一局域网中。
10.根据权利要求9所述的服务器系统,其特征在于,所述业务服务器与所述数据分流处理器之间通过socket或管道的方式相连接。
全文摘要
本发明提供一种构建可叠加服务器的方法以及服务器系统,该方法包括业务服务器接连到数据分流处理器后,发送注册信息给数据分流处理器;数据分流处理器接收到注册信息后记录业务服务器,标记该业务服务器当前的负荷状态;数据分流处理器接收到用户发送的数据处理请求后,根据当前已注册的各业务服务器的负荷状态选择其中一个业务服务器并将所述数据处理请求转发到该业务服务器,并更新该业务服务器的负荷状态;业务服务器接收到数据处理请求后进行逻辑运算处理,并返回处理结果给数据分流处理器,数据分流处理器接收到处理结果后更新业务服务器的负荷状态,然后将处理结果转发给用户。本发明能够有效节省运营成本,还可以有效节约资源。
文档编号H04L29/08GK102427478SQ201110450958
公开日2012年4月25日 申请日期2011年12月28日 优先权日2011年12月28日
发明者刘元进 申请人:广州杰赛科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1