基于应用代理服务器的负载均衡方法及装置的制造方法_2

文档序号:9581841阅读:来源:国知局
署,从而最大程度地满足了用户需求,提高了服应用代理服务器的资源利用率。
[0021]本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
【附图说明】
[0022]附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
[0023]图1为根据本发明实施例的一种基于应用代理服务器的负载均衡方法的流程示意图;
[0024]图2为根据本发明实施例的一种基于应用代理服务器的负载均衡系统的结构示意图;
[0025]图3是根据本发明实施例的一种负载均衡装置的结构示意图;
[0026]图4是根据本发明实施例的另一种负载均衡装置的结构示意图;
[0027]图5是根据本发明实施例的又一种负载均衡装置的结构示意图;
[0028]图6是根据本发明实施例的又一种负载均衡装置的结构示意图;
[0029]图7是根据本发明实施例的又一种负载均衡装置的结构示意图。
【具体实施方式】
[0030]为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
[0031]在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0032]本发明实施例提供一种基于应用代理服务器的负载均衡方法,如图1所示,该方法可以包括以下步骤:
[0033]步骤101,接收携带有待启动应用的标识信息的启动请求。
[0034]本步骤中,启动请求可以是在用户需要启动该待启动应用时发起的,该启动请求中携带有待启动应用的标识信息。该标识信息可以为待启动应用的名称或版本号。
[0035]步骤102,根据接收到的标识信息,从预先建立的应用历史数据库中获取待启动应用的资源需求。
[0036]可选地,本步骤之前还包括:建立应用历史数据库,具体包括:定时采集待启动应用的历史资源使用量,建立包含所述待启动应用的标识信息以及所述待启动应用的历史资源使用量的所述应用历史数据库;
[0037]获取待启动应用的资源需求包括:根据标识信息,从应用历史数据库中查找与接收到的标识信息对应的历史资源使用量;将查找到的历史资源使用量作为待启动应用的资源需求
[0038]步骤103,根据获得的资源需求以及至少一个应用代理服务器的负载信息,确定用于运行待启动应用的目标应用代理服务器。
[0039]可选地,在根据获得的资源需求以及至少一个应用代理服务器的负载信息,确定用于运行待启动应用的目标应用代理服务器之前,方法还包括获取至少一个应用代理服务器的负载信息,包括:接收至少一个应用代理服务器上报的包括至少一个应用代理服务器的资源利用率和/或可用资源量的负载信息;对接收到的至少一个应用代理服务器的资源利用率分别进行归一化;根据归一化后的各应用代理服务器的资源利用率和/或接收到的各应用代理服务器的可用资源量,分别对应用代理服务器进行排序。
[0040]本实施例的基于应用代理服务器的负载均衡方法,在负载评估方便考虑了多维度资源(例如,应用代理服务器的CPU、内存、网络带宽等的资源利用率及CPU、内存、网络带宽等的可用资源)的负载均衡,可以更加准确地评估各个应用代理服务器的负载状况;在应用的资源需求预估方面,使用了历史资源使用量对应用的资源需求进行预估,具有一定的预见性和较高的准确性。
[0041]由上述内容可知,通过获取待启动应用的资源需求以及各个应用代理服务器的负载信息,综合考虑该两方面因素来为待启动应用选择满足待启动应用的资源需求及负载需求的应用代理服务器,实现应用代理服务器资源的动态调度以及应用的动态部署,从而最大程度地满足用户需求,提高服应用代理服务器的资源利用率。
[0042]本申请实施例中,服务器集群中的各个应用代理服务器周期性地收集本机的CPU、内存、网络带宽等的资源利用率及CPU、内存、网络带宽等的可用资源量,并定时上报给负载均衡装置。
[0043]可选地,根据归一化后的至少一个应用代理服务器的资源利用率和/或接收到的至少一个应用代理服务器的可用资源量,对至少一个应用代理服务器进行排序包括:按照归一化后的至少一个应用代理服务器的资源利用率从低到高的顺序,对至少一个应用代理服务器进行排序,生成第一序列;或者,按照接收到的至少一个应用代理服务器的可用资源量从高到低的顺序,对至少一个应用代理服务器进行排序,生成第二序列。
[0044]在对至少一个应用代理服务器进行排序时,可以查询待启动应用的资源需求,分析待启动应用的哪一个维度的资源更迫切需要得到满足。如果待启动应用的各个维度的资源需求相对均衡,则将各个应用代理服务器按照资源使用率从低到高排序生成第一序列;如果待启动应用对某一种资源迫切需要(例如,待启动应用迫切需要网络带宽资源),则将各个应用代理服务器按照某单一维度的可用资源量(例如,网络带宽的可用资源量)从高到低排序生成第二序列。
[0045]可选地,在确定用于运行待启动应用的目标应用代理服务器之前,该方法还包括:根据待启动应用的资源需求,确定待启动应用的互斥应用。
[0046]本实施例提供的基于应用代理服务器的负载均衡方法,在应用的互斥性方面,根据所有应用的历史资源使用量,分析出可能产生资源竞争的互斥应用,从而避免互斥应用运行于同一台应用代理服务器,最大程度地满足应用的资源需求。
[0047]可选地,根据获取到的资源需求以及至少一个应用代理服务器的负载信息,在至少一个应用代理服务器中确定用于运行待启动应用的目标应用代理服务器包括:
[0048]将当前应用代理服务器初始化为第一序列或者第二序列的中的第一台应用代理服务器,重复执行以下操作,直到遍历完至少一个应用代理服务器:查找当前应用代理服务器中是否包含待启动应用的互斥应用以及当前应用代理服务器的负载信息是否满足待启动应用的资源需求;如果当前应用代理服务器中不包含待启动应用的互斥应用,并且当前应用代理服务器的负载信息满足待启动应用的资源需求,将当前应用代理服务器确定为目标应用代理服务器。
[0049]如果遍历完至少一个应用代理服务器,未确定出目标应用代理服务器,方法还包括:从至少一个应用代理服务器中,提取出负载信息满足待启动应用的资源需求的应用代理服务器;在负载信息满足待启动应用的资源需求的应用代理服务器中,将包含待启动应用的互斥应用的个数最少的应用代理服务器确定为目标应用代理服务器。
[0050]下面,如图2所示,基于在本发明实施例的云计算系统架构进行描述:该云计算系统架构包含用户终端20和云端,云端中包含负载均衡装置22 (负载均衡装置22作为一个具有决策功能的核心模块,负责用户应用的动态部署)、控制中心23、应用代理服务器(如图2中的应用代理服务器211、应用代理服务器212、应用代理服务器213、……、应用代理服务器21η)、计算资源以及存储资源等。
[0051]在应用本发明实施例的负载均衡方法时,用户终端20连接云端后便可通过云端的应用代理服务器(如图2中的应用代理服务器211、应用代理服务器212、应用代理服务器213、……、应用代理服务器21η)使用云端的计算资源、存储资源等,既能帮助用户实现业务的云端处理,又能进行统一安全管理。当用户需要启动某个应用时,负载均衡装置22 (即执行本发明实施例的负载均衡方法的执行主体)会接收到控制中心23发送的启动请求,其中,启动请求中包括待启动应用的标识信息。
[0052]仍如图2所示,负载均衡装置22在接收到该启动请求之后,负载均衡装置22会通过统计分析各个应用代理服务器(如图2中的应用代理服务器211、应用代理服务器212、应用代理服务器213、……、应用代理服务器21η)上报的负载信息以及待启动应用的资源需求,并确定一台应用代理服务器(相当于上
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1