CN105338082A - 基于应用代理服务器的负载均衡方法及装置 - Google Patents
基于应用代理服务器的负载均衡方法及装置 Download PDFInfo
- Publication number
- CN105338082A CN105338082A CN201510728644.7A CN201510728644A CN105338082A CN 105338082 A CN105338082 A CN 105338082A CN 201510728644 A CN201510728644 A CN 201510728644A CN 105338082 A CN105338082 A CN 105338082A
- Authority
- CN
- China
- Prior art keywords
- application
- launched
- launcher
- proxy server
- application launcher
- 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.)
- Pending
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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种基于应用代理服务器的负载均衡方法及装置,包括:接收携带有待启动应用的标识信息的启动请求;根据接收到的标识信息,从预先建立的应用历史数据库中获取待启动应用的资源需求;根据获得的资源需求以及至少一个应用代理服务器的负载信息,确定用于运行所述待启动应用的目标应用代理服务器。本发明为待启动应用分配了满足待启动应用的资源需求及负载需求的应用代理服务器。
Description
技术领域
本发明涉及云计算领域,尤指一种基于应用代理服务器的负载均衡方法及装置。
背景技术
随着云计算技术的迅速崛起与发展,越来越多的云计算解决方案得到实际应用与推广。从本质上讲,云计算带给大家的是一种如同水、电、煤一样的资源消费模式,一般用户按照实际需求定制资源,使用终端设备通过远程连接,便可以获取计算、存储、网络等资源,所有可用资源来自于云端,即互联网或服务器集群,而云终端则包括:个人计算机(PC,PersonalComputer)、手机、平板电脑、车载设备及可穿戴设置等。
目前,服务器集群资源调度方式多数都是通过单一的负载均衡方式,即根据各个服务器的负载情况,把不同的应用请求分配给不同的服务器,来保证服务器中所有应用的服务质量需求,从而提高应用的伸缩性。
单一的负载均衡方式虽然实现简单,但是,由于服务器集群的状态瞬息万变,当出现多应用、多并发用户的场景时,采用现有的负载均衡方法则可能导致资源竞争、应用互斥等问题,不能很好地为待启动应用分配满足待启动应用的资源需求及负载需求的应用代理服务器,更甚者可能导致服务器瘫痪。
发明内容
为了解决上述技术问题,本发明提供了一种基于应用代理服务器的负载均衡方法及装置,能够为待启动应用分配满足待启动应用的资源需求及负载需求的应用代理服务器。
为了达到本发明目的,本发明提供了一种基于应用代理服务器的负载均衡方法,包括:接收携带有待启动应用的标识信息的启动请求;根据接收到的标识信息,从预先建立的应用历史数据库中获取待启动应用的资源需求;根据获得的资源需求以及至少一个应用代理服务器的负载信息,确定用于运行所述待启动应用的目标应用代理服务器。
进一步地,该方法之前还包括建立所述应用历史数据库,包括:定时采集所述待启动应用的历史资源使用量,建立包含所述待启动应用的标识信息以及所述待启动应用的历史资源使用量的所述应用历史数据库;所述获取待启动应用的资源需求包括:根据所述标识信息,从所述应用历史数据库中查找与所述接收到的标识信息对应的历史资源使用量;将查找到的历史资源使用量作为所述待启动应用的资源需求。
进一步地,在所述确定用于运行所述待启动应用的目标应用代理服务器之前,所述方法还包括:根据所述待启动应用的资源需求,确定所述待启动应用的互斥应用。
进一步地,在所述确定用于运行所述待启动应用的目标应用代理服务器之前,所述方法还包括获取所述至少一个应用代理服务器的负载信息,包括:接收所述至少一个应用代理服务器上报的包括所述至少一个应用代理服务器的资源利用率和/或可用资源量的负载信息;对接收到的所述至少一个应用代理服务器的资源利用率进行归一化;根据归一化后的所述至少一个应用代理服务器的资源利用率和/或接收到的所述至少一个应用代理服务器的可用资源量,对所述至少一个应用代理服务器进行排序。
进一步地,所述根据归一化后的所述至少一个应用代理服务器的资源利用率和/或接收到的所述至少一个应用代理服务器的可用资源量,对所述至少一个应用代理服务器进行排序包括:按照归一化后的所述至少一个应用代理服务器的资源利用率从低到高的顺序,对所述至少一个应用代理服务器进行排序,生成第一序列;或者,按照接收到的所述至少一个应用代理服务器的可用资源量从高到低的顺序,对所述至少一个应用代理服务器进行排序,生成第二序列。
进一步地,所述根据获取到的资源需求以及预先采集的至少一个应用代理服务器的负载信息,在所述至少一个应用代理服务器中确定用于运行所述待启动应用的目标应用代理服务器包括:将当前应用代理服务器初始化为所述第一序列或者所述第二序列的中的第一台应用代理服务器,重复执行以下操作,直到遍历完所述至少一个应用代理服务器:查找所述当前应用代理服务器中是否包含所述待启动应用的互斥应用以及所述当前应用代理服务器的负载信息是否满足所述待启动应用的资源需求;如果所述当前应用代理服务器中不包含所述待启动应用的互斥应用,并且所述当前应用代理服务器的负载信息满足所述待启动应用的资源需求,将所述当前应用代理服务器确定为所述目标应用代理服务器。
进一步地,如果遍历完所述至少一个应用代理服务器,未确定出所述目标应用代理服务器,所述方法还包括:从所述至少一个应用代理服务器中,提取出负载信息满足所述待启动应用的资源需求的应用代理服务器;在负载信息满足所述待启动应用的资源需求的应用代理服务器中,将包含所述待启动应用的互斥应用的个数最少的应用代理服务器确定为所述目标应用代理服务器。
为了达到本发明目的,本发明提供了一种负载均衡装置,包括:接收单元,用于接收携带有待启动应用的标识信息的启动请求;获取单元,用于根据接收到的标识信息,从预先建立的应用历史数据库中获取待启动应用的资源需求;决策单元,用于根据获得的资源需求以及至少一个应用代理服务器的负载信息,确定用于运行所述待启动应用的目标应用代理服务器。
进一步地,负载均衡装置还包括:建立单元,用于定时采集所述待启动应用的历史资源使用量,建立包含所述待启动应用的标识信息以及所述待启动应用的历史资源使用量的所述应用历史数据库;所述获取单元用于执行以下步骤获取待启动应用的资源需求:根据所述标识信息,从所述应用历史数据库中查找与所述接收到的标识信息对应的历史资源使用量;将查找到的历史资源使用量作为所述待启动应用的资源需求。
进一步地,负载均衡装置还包括:确定单元,用于根据所述待启动应用的资源需求,确定所述待启动应用的互斥应用。
进一步地,负载均衡装置还包括:采集单元,用于接收所述至少一个应用代理服务器上报的包括所述至少一个应用代理服务器的资源利用率和/或可用资源量的负载信息;处理单元,用于对接收到的所述至少一个应用代理服务器的资源利用率进行归一化;排序单元,用于根据归一化后的所述至少一个应用代理服务器的资源利用率和/或接收到的所述至少一个应用代理服务器的可用资源量,对所述至少一个应用代理服务器进行排序。
进一步地,所述排序单元用于执行以下步骤根据归一化后的所述至少一个应用代理服务器的资源利用率和/或接收到的所述至少一个应用代理服务器的可用资源量,对所述至少一个应用代理服务器进行排序:按照归一化后的所述至少一个应用代理服务器的资源利用率从低到高的顺序,对所述至少一个应用代理服务器进行排序,生成第一序列;或者,按照接收到的所述至少一个应用代理服务器的可用资源量从高到低的顺序,对所述至少一个应用代理服务器进行排序,生成第二序列。
进一步地,所述决策单元用于执行以下步骤根据获取到的资源需求以及预先采集的至少一个应用代理服务器的负载信息,在所述至少一个应用代理服务器中确定用于运行所述待启动应用的目标应用代理服务器:将当前应用代理服务器初始化为所述第一序列或者所述第二序列的中的第一台应用代理服务器,重复执行以下操作,直到遍历完所述至少一个应用代理服务器:查找所述当前应用代理服务器中是否包含所述待启动应用的互斥应用以及所述当前应用代理服务器的负载信息是否满足所述待启动应用的资源需求;如果所述当前应用代理服务器中不包含所述待启动应用的互斥应用,并且所述当前应用代理服务器的负载信息满足所述待启动应用的资源需求,将所述当前应用代理服务器确定为所述目标应用代理服务器。
进一步地,负载均衡装置还包括:提取单元,用于如果遍历完所述至少一个应用代理服务器,未确定出所述目标应用代理服务器,从所述至少一个应用代理服务器中,提取出负载信息满足所述待启动应用的资源需求的应用代理服务器;其中,所示决策单元,还用于在负载信息满足所述待启动应用的资源需求的应用代理服务器中,将包含所述待启动应用的互斥应用的个数最少的应用代理服务器确定为所述目标应用代理服务器。
本发明实施例中,通过获取待启动应用的资源需求以及各个应用代理服务器的负载信息,综合考虑该两方面因素来为待启动应用选择满足待启动应用的资源需求及负载需求的应用代理服务器,实现了应用代理服务器资源的动态调度以及应用的动态部署,从而最大程度地满足了用户需求,提高了服应用代理服务器的资源利用率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为根据本发明实施例的一种基于应用代理服务器的负载均衡方法的流程示意图;
图2为根据本发明实施例的一种基于应用代理服务器的负载均衡系统的结构示意图;
图3是根据本发明实施例的一种负载均衡装置的结构示意图;
图4是根据本发明实施例的另一种负载均衡装置的结构示意图;
图5是根据本发明实施例的又一种负载均衡装置的结构示意图;
图6是根据本发明实施例的又一种负载均衡装置的结构示意图;
图7是根据本发明实施例的又一种负载均衡装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本发明实施例提供一种基于应用代理服务器的负载均衡方法,如图1所示,该方法可以包括以下步骤:
步骤101,接收携带有待启动应用的标识信息的启动请求。
本步骤中,启动请求可以是在用户需要启动该待启动应用时发起的,该启动请求中携带有待启动应用的标识信息。该标识信息可以为待启动应用的名称或版本号。
步骤102,根据接收到的标识信息,从预先建立的应用历史数据库中获取待启动应用的资源需求。
可选地,本步骤之前还包括:建立应用历史数据库,具体包括:定时采集待启动应用的历史资源使用量,建立包含所述待启动应用的标识信息以及所述待启动应用的历史资源使用量的所述应用历史数据库;
获取待启动应用的资源需求包括:根据标识信息,从应用历史数据库中查找与接收到的标识信息对应的历史资源使用量;将查找到的历史资源使用量作为待启动应用的资源需求
步骤103,根据获得的资源需求以及至少一个应用代理服务器的负载信息,确定用于运行待启动应用的目标应用代理服务器。
可选地,在根据获得的资源需求以及至少一个应用代理服务器的负载信息,确定用于运行待启动应用的目标应用代理服务器之前,方法还包括获取至少一个应用代理服务器的负载信息,包括:接收至少一个应用代理服务器上报的包括至少一个应用代理服务器的资源利用率和/或可用资源量的负载信息;对接收到的至少一个应用代理服务器的资源利用率分别进行归一化;根据归一化后的各应用代理服务器的资源利用率和/或接收到的各应用代理服务器的可用资源量,分别对应用代理服务器进行排序。
本实施例的基于应用代理服务器的负载均衡方法,在负载评估方便考虑了多维度资源(例如,应用代理服务器的CPU、内存、网络带宽等的资源利用率及CPU、内存、网络带宽等的可用资源)的负载均衡,可以更加准确地评估各个应用代理服务器的负载状况;在应用的资源需求预估方面,使用了历史资源使用量对应用的资源需求进行预估,具有一定的预见性和较高的准确性。
由上述内容可知,通过获取待启动应用的资源需求以及各个应用代理服务器的负载信息,综合考虑该两方面因素来为待启动应用选择满足待启动应用的资源需求及负载需求的应用代理服务器,实现应用代理服务器资源的动态调度以及应用的动态部署,从而最大程度地满足用户需求,提高服应用代理服务器的资源利用率。
本申请实施例中,服务器集群中的各个应用代理服务器周期性地收集本机的CPU、内存、网络带宽等的资源利用率及CPU、内存、网络带宽等的可用资源量,并定时上报给负载均衡装置。
可选地,根据归一化后的至少一个应用代理服务器的资源利用率和/或接收到的至少一个应用代理服务器的可用资源量,对至少一个应用代理服务器进行排序包括:按照归一化后的至少一个应用代理服务器的资源利用率从低到高的顺序,对至少一个应用代理服务器进行排序,生成第一序列;或者,按照接收到的至少一个应用代理服务器的可用资源量从高到低的顺序,对至少一个应用代理服务器进行排序,生成第二序列。
在对至少一个应用代理服务器进行排序时,可以查询待启动应用的资源需求,分析待启动应用的哪一个维度的资源更迫切需要得到满足。如果待启动应用的各个维度的资源需求相对均衡,则将各个应用代理服务器按照资源使用率从低到高排序生成第一序列;如果待启动应用对某一种资源迫切需要(例如,待启动应用迫切需要网络带宽资源),则将各个应用代理服务器按照某单一维度的可用资源量(例如,网络带宽的可用资源量)从高到低排序生成第二序列。
可选地,在确定用于运行待启动应用的目标应用代理服务器之前,该方法还包括:根据待启动应用的资源需求,确定待启动应用的互斥应用。
本实施例提供的基于应用代理服务器的负载均衡方法,在应用的互斥性方面,根据所有应用的历史资源使用量,分析出可能产生资源竞争的互斥应用,从而避免互斥应用运行于同一台应用代理服务器,最大程度地满足应用的资源需求。
可选地,根据获取到的资源需求以及至少一个应用代理服务器的负载信息,在至少一个应用代理服务器中确定用于运行待启动应用的目标应用代理服务器包括:
将当前应用代理服务器初始化为第一序列或者第二序列的中的第一台应用代理服务器,重复执行以下操作,直到遍历完至少一个应用代理服务器:查找当前应用代理服务器中是否包含待启动应用的互斥应用以及当前应用代理服务器的负载信息是否满足待启动应用的资源需求;如果当前应用代理服务器中不包含待启动应用的互斥应用,并且当前应用代理服务器的负载信息满足待启动应用的资源需求,将当前应用代理服务器确定为目标应用代理服务器。
如果遍历完至少一个应用代理服务器,未确定出目标应用代理服务器,方法还包括:从至少一个应用代理服务器中,提取出负载信息满足待启动应用的资源需求的应用代理服务器;在负载信息满足待启动应用的资源需求的应用代理服务器中,将包含待启动应用的互斥应用的个数最少的应用代理服务器确定为目标应用代理服务器。
下面,如图2所示,基于在本发明实施例的云计算系统架构进行描述:该云计算系统架构包含用户终端20和云端,云端中包含负载均衡装置22(负载均衡装置22作为一个具有决策功能的核心模块,负责用户应用的动态部署)、控制中心23、应用代理服务器(如图2中的应用代理服务器211、应用代理服务器212、应用代理服务器213、……、应用代理服务器21n)、计算资源以及存储资源等。
在应用本发明实施例的负载均衡方法时,用户终端20连接云端后便可通过云端的应用代理服务器(如图2中的应用代理服务器211、应用代理服务器212、应用代理服务器213、……、应用代理服务器21n)使用云端的计算资源、存储资源等,既能帮助用户实现业务的云端处理,又能进行统一安全管理。当用户需要启动某个应用时,负载均衡装置22(即执行本发明实施例的负载均衡方法的执行主体)会接收到控制中心23发送的启动请求,其中,启动请求中包括待启动应用的标识信息。
仍如图2所示,负载均衡装置22在接收到该启动请求之后,负载均衡装置22会通过统计分析各个应用代理服务器(如图2中的应用代理服务器211、应用代理服务器212、应用代理服务器213、……、应用代理服务器21n)上报的负载信息以及待启动应用的资源需求,并确定一台应用代理服务器(相当于上述的目标应用代理服务器)来运行待启动应用(具体如何根据获取到的资源需求以及负载信息,确定目标应用代理服务器的方法上述实施例中已经给出,此处不再赘述)。进而,负载均衡装置22可以将选择的结果返回给控制中心23,控制中心23再通知用户终端20,去远程连接目标应用代理服务器。
本实施例提供的负载均衡方法,综合考虑应用代理服务器的负载情况、待启动应用的资源需求、待启动应用的应用分布以及应用之间的互斥性这些因素,最终选择出能够满足待启动应用的资源需求以及负载需求的目标应用代理服务器;通过分析待启动应用是否迫切需要单一资源或单一资源使用过多,来自动选择合适的应用代理服务器,以尽量满足其需求并保证其他应用的资源需求不受影响。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括如果干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
根据本发明实施例,还提供了一种用于实施上述方法实施例的装置实施例,本申请上述实施例所提供的装置可以在计算机终端上运行。
图3是根据本申请实施例的负载均衡装置的结构示意图,如图3所示,该负载均衡装置可以包括接收单元301、获取单元302以及决策单元303。
其中,接收单元301,用于接收携带有待启动应用的标识信息的启动请求;获取单元302,用于根据接收到的标识信息,从预先建立的应用历史数据库中获取待启动应用的资源需求;决策单元303,用于根据获得的资源需求以及至少一个应用代理服务器的负载信息,确定用于运行所述待启动应用的目标应用代理服务器。
由上可知,本申请上述实施例所提供的方案,通过获取待启动应用的资源需求以及各个应用代理服务器的负载信息,综合考虑该两方面因素来为待启动应用选择满足待启动应用的资源需求及负载需求的应用代理服务器,实现了应用代理服务器资源的动态调度以及应用的动态部署,从而最大程度地满足了用户需求,提高了服应用代理服务器的资源利用率。
此处需要说明的是,上述接收单元301、获取单元302以及决策单元303对应于上述的S101至S103,三个模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在计算机终端中,可以通过软件实现,也可以通过硬件实现。
可选地,如图4所示,负载均衡装置还包括:建立单元401。
其中,建立单元401,用于定时采集所述待启动应用的历史资源使用量,建立包含所述待启动应用的标识信息以及所述待启动应用的历史资源使用量的所述应用历史数据库;所述获取单元302用于执行以下步骤获取待启动应用的资源需求:根据所述标识信息,从所述应用历史数据库中查找与所述接收到的标识信息对应的历史资源使用量;将查找到的历史资源使用量作为所述待启动应用的资源需求。
可选地,如图5所示,负载均衡装置还包括:确定单元501。
其中,确定单元501,用于根据所述待启动应用的资源需求,确定所述待启动应用的互斥应用。
可选地,如图6所示,负载均衡装置还包括:采集单元601、处理单元602以及排序单元603。
其中,采集单元601,用于接收所述至少一个应用代理服务器上报的包括所述至少一个应用代理服务器的资源利用率和/或可用资源量的负载信息;处理单元602,用于对接收到的所述至少一个应用代理服务器的资源利用率进行归一化;排序单元603,用于根据归一化后的所述至少一个应用代理服务器的资源利用率和/或接收到的所述至少一个应用代理服务器的可用资源量,对所述至少一个应用代理服务器进行排序。
可选地,所述排序单元603用于执行以下步骤根据归一化后的所述至少一个应用代理服务器的资源利用率和/或接收到的所述至少一个应用代理服务器的可用资源量,对所述至少一个应用代理服务器进行排序:按照归一化后的所述至少一个应用代理服务器的资源利用率从低到高的顺序,对所述至少一个应用代理服务器进行排序,生成第一序列;或者,按照接收到的所述至少一个应用代理服务器的可用资源量从高到低的顺序,对所述至少一个应用代理服务器进行排序,生成第二序列。
可选地,所述决策单元303用于执行以下步骤根据获取到的资源需求以及至少一个应用代理服务器的负载信息,在所述至少一个应用代理服务器中确定用于运行所述待启动应用的目标应用代理服务器:将当前应用代理服务器初始化为所述第一序列或者所述第二序列的中的第一台应用代理服务器,重复执行以下操作,直到遍历完所述至少一个应用代理服务器:查找所述当前应用代理服务器中是否包含所述待启动应用的互斥应用以及所述当前应用代理服务器的负载信息是否满足所述待启动应用的资源需求;如果所述当前应用代理服务器中不包含所述待启动应用的互斥应用,并且所述当前应用代理服务器的负载信息满足所述待启动应用的资源需求,将所述当前应用代理服务器确定为所述目标应用代理服务器。
可选地,如图7所示,负载均衡装置还包括:提取单元701。
其中,提取单元701,用于如果遍历完所述至少一个应用代理服务器,未确定出所述目标应用代理服务器,从所述至少一个应用代理服务器中,提取出负载信息满足所述待启动应用的资源需求的应用代理服务器;其中,所述决策单元303,还用于在负载信息满足所述待启动应用的资源需求的应用代理服务器中,将包含所述待启动应用的互斥应用的个数最少的应用代理服务器确定为所述目标应用代理服务器。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括如果干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出如果干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
Claims (14)
1.一种基于应用代理服务器的负载均衡方法,其特征在于,包括:
接收携带有待启动应用的标识信息的启动请求;
根据接收到的标识信息,从预先建立的应用历史数据库中获取待启动应用的资源需求;
根据获得的资源需求以及至少一个应用代理服务器的负载信息,确定用于运行所述待启动应用的目标应用代理服务器。
2.根据权利要求1所述的负载均衡方法,其特征在于,该方法之前还包括建立所述应用历史数据库,包括:
定时采集所述待启动应用的历史资源使用量,建立包含所述待启动应用的标识信息以及所述待启动应用的历史资源使用量的所述应用历史数据库;
所述获取待启动应用的资源需求包括:根据所述接收到的标识信息,从所述应用历史数据库中查找与所述接收到的标识信息对应的历史资源使用量;
将查找到的历史资源使用量作为所述待启动应用的资源需求。
3.根据权利要求1或2所述的负载均衡方法,其特征在于,在所述确定用于运行所述待启动应用的目标应用代理服务器之前,所述方法还包括:
根据所述待启动应用的资源需求,确定所述待启动应用的互斥应用。
4.根据权利要求3所述的负载均衡方法,其特征在于,在所述确定用于运行所述待启动应用的目标应用代理服务器之前,所述方法还包括获取所述至少一个应用代理服务器的负载信息,包括:
接收所述至少一个应用代理服务器上报的包括所述至少一个应用代理服务器的资源利用率和/或可用资源量的负载信息;
对接收到的所述至少一个应用代理服务器的资源利用率进行归一化;
根据归一化后的所述至少一个应用代理服务器的资源利用率和/或接收到的所述至少一个应用代理服务器的可用资源量,对所述至少一个应用代理服务器进行排序。
5.根据权利要求4所述的负载均衡方法,其特征在于,所述根据归一化后的所述至少一个应用代理服务器的资源利用率和/或接收到的所述至少一个应用代理服务器的可用资源量,对所述至少一个应用代理服务器进行排序包括:
按照归一化后的所述至少一个应用代理服务器的资源利用率从低到高的顺序,对所述至少一个应用代理服务器进行排序,生成第一序列;或者,
按照接收到的所述至少一个应用代理服务器的可用资源量从高到低的顺序,对所述至少一个应用代理服务器进行排序,生成第二序列。
6.根据权利要求5所述的负载均衡方法,其特征在于,所述根据获取到的资源需求以及预先采集的至少一个应用代理服务器的负载信息,在所述至少一个应用代理服务器中确定用于运行所述待启动应用的目标应用代理服务器包括:
将当前应用代理服务器初始化为所述第一序列或者所述第二序列的中的第一台应用代理服务器,重复执行以下操作,直到遍历完所述至少一个应用代理服务器:
查找所述当前应用代理服务器中是否包含所述待启动应用的互斥应用以及所述当前应用代理服务器的负载信息是否满足所述待启动应用的资源需求;
如果所述当前应用代理服务器中不包含所述待启动应用的互斥应用,并且所述当前应用代理服务器的负载信息满足所述待启动应用的资源需求,将所述当前应用代理服务器确定为所述目标应用代理服务器。
7.根据权利要求6所述的负载均衡方法,其特征在于,如果遍历完所述至少一个应用代理服务器,未确定出所述目标应用代理服务器,所述方法还包括:
从所述至少一个应用代理服务器中,提取出负载信息满足所述待启动应用的资源需求的应用代理服务器;
在负载信息满足所述待启动应用的资源需求的应用代理服务器中,将包含所述待启动应用的互斥应用的个数最少的应用代理服务器确定为所述目标应用代理服务器。
8.一种负载均衡装置,其特征在于,包括:
接收单元,用于接收携带有待启动应用的标识信息的启动请求;
获取单元,用于根据接收到的标识信息,从预先建立的应用历史数据库中获取待启动应用的资源需求;
决策单元,用于根据获得的资源需求以及至少一个应用代理服务器的负载信息,确定用于运行所述待启动应用的目标应用代理服务器。
9.根据权利要求8所述的负载均衡装置,其特征在于,还包括:
建立单元,用于定时采集所述待启动应用的历史资源使用量,建立包含所述待启动应用的标识信息以及所述待启动应用的历史资源使用量的所述应用历史数据库;
所述获取单元用于执行以下步骤获取待启动应用的资源需求:
根据所述标识信息,从所述应用历史数据库中查找与所述接收到的标识信息对应的历史资源使用量;
将查找到的历史资源使用量作为所述待启动应用的资源需求。
10.根据权利要求8或9所述的负载均衡装置,其特征在于,还包括:
确定单元,用于根据所述待启动应用的资源需求,确定所述待启动应用的互斥应用。
11.根据权利要求10所述的负载均衡装置,其特征在于,还包括:
采集单元,用于接收所述至少一个应用代理服务器上报的包括所述至少一个应用代理服务器的资源利用率和/或可用资源量的负载信息;
处理单元,用于对接收到的所述至少一个应用代理服务器的资源利用率进行归一化;
排序单元,用于根据归一化后的所述至少一个应用代理服务器的资源利用率和/或接收到的所述至少一个应用代理服务器的可用资源量,对所述至少一个应用代理服务器进行排序。
12.根据权利要求11所述的负载均衡装置,其特征在于,所述排序单元用于执行以下步骤根据归一化后的所述至少一个应用代理服务器的资源利用率和/或接收到的所述至少一个应用代理服务器的可用资源量,对所述至少一个应用代理服务器进行排序:
按照归一化后的所述至少一个应用代理服务器的资源利用率从低到高的顺序,对所述至少一个应用代理服务器进行排序,生成第一序列;或者,
按照接收到的所述至少一个应用代理服务器的可用资源量从高到低的顺序,对所述至少一个应用代理服务器进行排序,生成第二序列。
13.根据权利要求12所述的负载均衡装置,其特征在于,所述决策单元用于执行以下步骤根据获取到的资源需求以及预先采集的至少一个应用代理服务器的负载信息,在所述至少一个应用代理服务器中确定用于运行所述待启动应用的目标应用代理服务器:
将当前应用代理服务器初始化为所述第一序列或者所述第二序列的中的第一台应用代理服务器,重复执行以下操作,直到遍历完所述至少一个应用代理服务器:
查找所述当前应用代理服务器中是否包含所述待启动应用的互斥应用以及所述当前应用代理服务器的负载信息是否满足所述待启动应用的资源需求;
如果所述当前应用代理服务器中不包含所述待启动应用的互斥应用,并且所述当前应用代理服务器的负载信息满足所述待启动应用的资源需求,将所述当前应用代理服务器确定为所述目标应用代理服务器。
14.根据权利要求13所述的负载均衡装置,其特征在于,还包括:
提取单元,用于如果遍历完所述至少一个应用代理服务器,未确定出所述目标应用代理服务器,从所述至少一个应用代理服务器中,提取出负载信息满足所述待启动应用的资源需求的应用代理服务器;
其中,所述决策单元,还用于在负载信息满足所述待启动应用的资源需求的应用代理服务器中,将包含所述待启动应用的互斥应用的个数最少的应用代理服务器确定为所述目标应用代理服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510728644.7A CN105338082A (zh) | 2015-10-30 | 2015-10-30 | 基于应用代理服务器的负载均衡方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510728644.7A CN105338082A (zh) | 2015-10-30 | 2015-10-30 | 基于应用代理服务器的负载均衡方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105338082A true CN105338082A (zh) | 2016-02-17 |
Family
ID=55288357
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510728644.7A Pending CN105338082A (zh) | 2015-10-30 | 2015-10-30 | 基于应用代理服务器的负载均衡方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105338082A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106060131A (zh) * | 2016-05-26 | 2016-10-26 | 杭州华三通信技术有限公司 | 一种分配dns服务器的方法和装置 |
CN106331144A (zh) * | 2016-09-08 | 2017-01-11 | 四川大学 | 一种基于移动代理系统的代理负载均衡方法 |
CN106899681A (zh) * | 2017-03-10 | 2017-06-27 | 腾讯科技(深圳)有限公司 | 一种信息推送的方法以及服务器 |
CN107566493A (zh) * | 2017-09-06 | 2018-01-09 | 中国科学院信息工程研究所 | 一种面向复杂用户需求的代理节点创建方法、代理服务方法和系统 |
CN107729126A (zh) * | 2016-08-12 | 2018-02-23 | 中国移动通信集团浙江有限公司 | 一种容器云的任务调度方法和装置 |
CN110399213A (zh) * | 2019-05-21 | 2019-11-01 | 腾讯科技(深圳)有限公司 | 确定应用程序的资源需求的方法、装置、电子设备及介质 |
CN110602254A (zh) * | 2019-10-08 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种实现负载均衡的方法、装置及系统 |
CN111198768A (zh) * | 2020-01-07 | 2020-05-26 | 山东超越数控电子股份有限公司 | 一种集群服务器自动选择方法 |
CN111274026A (zh) * | 2020-01-08 | 2020-06-12 | 北京月新时代科技股份有限公司 | 负载均衡方法、装置及电子设备 |
CN112398892A (zh) * | 2019-08-19 | 2021-02-23 | 浙江宇视科技有限公司 | 服务分配方法、装置及设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8813180B1 (en) * | 2006-10-17 | 2014-08-19 | A10 Networks, Inc. | Applying network traffic policy to an application session |
CN103997526A (zh) * | 2014-05-21 | 2014-08-20 | 中国科学院计算技术研究所 | 一种可扩展负载均衡系统和方法 |
CN104038540A (zh) * | 2014-06-03 | 2014-09-10 | 山东乾云启创信息科技有限公司 | 一种应用代理服务器自动选择方法及系统 |
-
2015
- 2015-10-30 CN CN201510728644.7A patent/CN105338082A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8813180B1 (en) * | 2006-10-17 | 2014-08-19 | A10 Networks, Inc. | Applying network traffic policy to an application session |
CN103997526A (zh) * | 2014-05-21 | 2014-08-20 | 中国科学院计算技术研究所 | 一种可扩展负载均衡系统和方法 |
CN104038540A (zh) * | 2014-06-03 | 2014-09-10 | 山东乾云启创信息科技有限公司 | 一种应用代理服务器自动选择方法及系统 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106060131B (zh) * | 2016-05-26 | 2019-10-11 | 新华三技术有限公司 | 一种分配dns服务器的方法和装置 |
CN106060131A (zh) * | 2016-05-26 | 2016-10-26 | 杭州华三通信技术有限公司 | 一种分配dns服务器的方法和装置 |
CN107729126A (zh) * | 2016-08-12 | 2018-02-23 | 中国移动通信集团浙江有限公司 | 一种容器云的任务调度方法和装置 |
CN106331144A (zh) * | 2016-09-08 | 2017-01-11 | 四川大学 | 一种基于移动代理系统的代理负载均衡方法 |
CN106899681B (zh) * | 2017-03-10 | 2020-10-27 | 腾讯科技(深圳)有限公司 | 一种信息推送的方法以及服务器 |
CN106899681A (zh) * | 2017-03-10 | 2017-06-27 | 腾讯科技(深圳)有限公司 | 一种信息推送的方法以及服务器 |
CN107566493A (zh) * | 2017-09-06 | 2018-01-09 | 中国科学院信息工程研究所 | 一种面向复杂用户需求的代理节点创建方法、代理服务方法和系统 |
CN110399213A (zh) * | 2019-05-21 | 2019-11-01 | 腾讯科技(深圳)有限公司 | 确定应用程序的资源需求的方法、装置、电子设备及介质 |
CN110399213B (zh) * | 2019-05-21 | 2024-05-10 | 腾讯科技(深圳)有限公司 | 确定应用程序的资源需求的方法、装置、电子设备及介质 |
CN112398892A (zh) * | 2019-08-19 | 2021-02-23 | 浙江宇视科技有限公司 | 服务分配方法、装置及设备 |
CN112398892B (zh) * | 2019-08-19 | 2023-06-20 | 浙江宇视科技有限公司 | 服务分配方法、装置及设备 |
CN110602254A (zh) * | 2019-10-08 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种实现负载均衡的方法、装置及系统 |
CN110602254B (zh) * | 2019-10-08 | 2022-05-20 | 腾讯科技(深圳)有限公司 | 一种实现负载均衡的方法、装置及系统 |
CN111198768A (zh) * | 2020-01-07 | 2020-05-26 | 山东超越数控电子股份有限公司 | 一种集群服务器自动选择方法 |
CN111274026A (zh) * | 2020-01-08 | 2020-06-12 | 北京月新时代科技股份有限公司 | 负载均衡方法、装置及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105338082A (zh) | 基于应用代理服务器的负载均衡方法及装置 | |
CN107431651B (zh) | 一种网络服务的生命周期管理方法及设备 | |
CN109309596B (zh) | 一种压力测试方法、装置及服务器 | |
CN105653398B (zh) | 一种智能分配操作系统镜像方法 | |
CN104185840A (zh) | 持续部署流水线测试的优先化 | |
CN107506145B (zh) | 一种物理存储调度方法及云主机创建方法 | |
CN108415845A (zh) | Ab测试系统指标置信区间的计算方法、装置和服务器 | |
CN110597719B (zh) | 一种用于适配测试的图像聚类方法、装置及介质 | |
CN104038540A (zh) | 一种应用代理服务器自动选择方法及系统 | |
CN106980571A (zh) | 一种测试用例集的构建方法和设备 | |
CN105512156A (zh) | 点击模型生成方法和装置 | |
CN114327857A (zh) | 操作数据处理方法、装置、计算机设备和存储介质 | |
CN110020333A (zh) | 数据分析方法及装置、电子设备、存储介质 | |
CN112925964A (zh) | 基于云计算服务的大数据采集方法及大数据采集服务系统 | |
CN106528795B (zh) | 一种数据挖掘方法及装置 | |
Alhaizaey et al. | Optimizing task allocation for edge micro-clusters in smart cities | |
CN104636474A (zh) | 构建音频指纹库及检索音频指纹的方法和设备 | |
CN105138406A (zh) | 一种任务处理方法、装置及系统 | |
CN111885159B (zh) | 数据采集方法、装置、电子设备及存储介质 | |
CN113434770A (zh) | 电子商务与大数据结合的业务画像分析方法及系统 | |
CN113792875A (zh) | 一种分布式通信库的性能测试方法、装置、设备及介质 | |
CN114329164A (zh) | 用于处理数据的方法、装置、设备、介质和产品 | |
CN112988383A (zh) | 一种资源分配方法、装置、设备以及存储介质 | |
CN112925831A (zh) | 基于云计算服务的大数据挖掘方法及大数据挖掘服务系统 | |
CN112148461A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160217 |
|
RJ01 | Rejection of invention patent application after publication |