CN103986766B - 自适应负载均衡作业任务调度方法及装置 - Google Patents
自适应负载均衡作业任务调度方法及装置 Download PDFInfo
- Publication number
- CN103986766B CN103986766B CN201410211091.3A CN201410211091A CN103986766B CN 103986766 B CN103986766 B CN 103986766B CN 201410211091 A CN201410211091 A CN 201410211091A CN 103986766 B CN103986766 B CN 103986766B
- Authority
- CN
- China
- Prior art keywords
- agent node
- upper limit
- value
- logic resource
- working state
- 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.)
- Active
Links
- 230000003044 adaptive effect Effects 0.000 title claims abstract description 33
- 238000000034 method Methods 0.000 title claims abstract description 24
- 239000011159 matrix material Substances 0.000 claims description 21
- 238000004364 calculation method Methods 0.000 claims description 16
- 238000000354 decomposition reaction Methods 0.000 claims description 9
- 238000004422 calculation algorithm Methods 0.000 claims description 8
- 239000002699 waste material Substances 0.000 abstract description 4
- 239000003795 chemical substances by application Substances 0.000 description 157
- 238000012545 processing Methods 0.000 description 10
- 238000005070 sampling Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 230000009286 beneficial effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003631 expected effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种自适应负载均衡作业任务调度方法及装置,该方法包括以下步骤:调度自适应调整器获取每个代理节点在设定时间段内各时间点的工作状态指标;所述调度自适应调整器根据所述每个代理节点在设定时间段内各时间点的工作状态指标,对应更新调度服务器中该代理节点的可用逻辑资源的上限值;所述调度服务器根据接收到的作业任务所需逻辑资源值,以及所述每个代理节点更新后的可用逻辑资源的上限值,向各代理节点分配所述作业任务。本发明实现了根据代理节点工作状态负载自适应均衡作业任务调度,从而防止了代理节点出现负荷过重发生阻塞或负荷过轻浪费资源的情况。
Description
技术领域
本发明涉及服务器集群系统的网络数据传输处理技术领域,尤其是涉及一种自适应负载均衡作业任务调度方法及装置。
背景技术
随着信息科技的不断发展,基于服务器集群的应用系统的使用领域越来越广泛。对于大型企业来说,服务器集群系统的处理时效和控制成本是提高企业效益的一大手段,因此服务器集群的负载均衡技术已成为大型集群系统提高运行时效、合理分配资源的关键手段。目前服务器集群的负载均衡主要通过一个服务节点与多个代理节点之间的直接通信方式来实现。业界推荐的负载均衡机制为“上限型调度”,即基于作业任务所需逻辑资源值以及代理节点(agent)的预设的作业逻辑资源值、已用逻辑资源值和等待队列进行作业分配。然而,这种机制存在如下问题:
各代理节点的作业逻辑资源值一旦设定,一般不作调整,因此无法动态适应代理节点上资源占用情况的变化(例如代理节点所在物理机同时也有其它用途)。这导致各代理节点的逻辑资源上限只能在某些时间段发挥预期的效果,其它时段可能因预设的上限设置过高而导致代理节点负荷过重,发生阻塞,从而影响正常处理速度;或者因预设的上限设置过低而导致代理节点负荷过轻,从而导致资源资源利用不充分。
发明内容
本发明的目的在于提供一种自适应负载均衡作业任务调度方法及装置,以实现根据代理节点工作负载自适应调节服务器集群系统中各代理节点的逻辑资源上限,防止代理节点出现负荷过重发生阻塞和负荷过轻浪费资源的情况,实现自适应负载均衡作业任务调度。
为达到上述目的,一方面,本发明提供了一种自适应负载均衡作业任务调度方法,该方法包括以下步骤:
调度自适应调整器获取每个代理节点在设定时间段内各时间点的工作状态指标;
所述调度自适应调整器根据所述每个代理节点在设定时间段内各时间点的工作状态指标,对应更新调度服务器中该代理节点的可用逻辑资源的上限值;
所述调度服务器根据接收到的作业任务所需逻辑资源值,以及所述每个代理节点更新后的可用逻辑资源的上限值,向各代理节点分配所述作业任务。
本发明的自适应负载均衡作业任务调度方法,所述根据所述每个代理节点在设定时间段内各时间点的工作状态指标,对应更新调度服务器中该代理节点的可用逻辑资源的上限值,具体包括:
根据所述每个代理节点在设定时间段内各时间点的工作状态指标,利用总体最小二乘算法对应计算出该代理节点当前最新的可用逻辑资源的上限值;
根据所述每个代理节点在设定时间段内各时间点的工作状态指标,计算出该代理节点在设定时段内的已用逻辑资源值的均值;
将所述每个代理节点当前最新的可用逻辑资源的上限值与其在所述设定时段内的已用逻辑资源值的均值进行比较;
如果所述上限值大于所述均值,则增加所述调度服务器中该代理节点的可用逻辑资源的上限值;如果所述上限值小于所述均值,则降低所述调度服务器中该代理节点的可用逻辑资源的上限值。
本发明的自适应负载均衡作业任务调度方法,所述根据所述每个代理节点在设定时间段内各时间点的工作状态指标,利用总体最小二乘算法对应计算出该代理节点当前最新的可用逻辑资源的上限值,具体包括:
将每个代理节点在设定时段内各时间点的工作状态指标以及已用逻辑资源值的负数各自按时间顺序排列,形成该代理节点的多维序列,并计算该多维序列的协方差矩阵;
对每个代理节点的多维序列的协方差矩阵进行本征值分解,利用最小本征值对应的本征向量各维系数的归一化值对应计算该代理节点的每个工作状态指标的最优权值wi,i=2,…,I;
获取所述每个代理节点在设定时段内的每个工作状态指标的上限值ti,i=2,…,I;
根据公式计算出所述每个代理节点当前最新的可用逻辑资源的上限值lr。
本发明的自适应负载均衡作业任务调度方法,所述根据所述每个代理节点在设定时间段内各时间点的工作状态指标,计算出该代理节点在设定时段内的已用逻辑资源值的均值,具体包括:
求取所述每个代理节点上各工作状态指标在设定时段内的工作状态指标均值;
根据公式计算出所述每个代理节点在设定时段内的已用逻辑资源值的均值lc,其中E(ri(j,k))为所述每个代理节点在设定时段内的工作状态指标均值,ri(j,k)为第i个工作状态指标的第j个序列,wi为每个代理节点的每个工作状态指标的最优权值。
本发明的自适应负载均衡作业任务调度方法,所述根据接收到的作业任务所需逻辑资源值,以及所述每个代理节点更新后的可用逻辑资源的上限值,向各代理节点分配所述作业任务,具体包括:
对每个代理节点判断其可用逻辑资源值否大于作业任务所需逻辑资源值;
如果所述作业任务所需逻辑资源值大于所有代理节点的可用逻辑资源值,则不分配所述作业任务,并将其放入待调度队列继续等待;否则,将所述作业任务分配给其中可用逻辑资源值最大的代理节点执行。
再一方面,本发明还提供了一种自适应负载均衡作业任务调度装置,该装置包括:
调度自适应调整器,用于获取每个代理节点在设定时间段内各时间点的工作状态指标,根据所述每个代理节点在设定时间段内各时间点的工作状态指标,对应更新调度服务器中该代理节点的可用逻辑资源的上限值;
调度服务器,用于根据接收到的作业任务所需逻辑资源值,以及所述每个代理节点更新后的可用逻辑资源的上限值,向各代理节点分配所述作业任务。
本发明的自适应负载均衡作业任务调度装置,所述调度自适应调整器包括:
可用逻辑资源上限统计模块,用于根据所述每个代理节点在设定时间段内各时间点的工作状态指标,利用总体最小二乘算法对应计算出该代理节点当前最新的可用逻辑资源的上限值;
可用逻辑资源上限调整模块,用于根据所述每个代理节点在设定时间段内各时间点的工作状态指标,计算出该代理节点在设定时段内的已用逻辑资源值的均值;将所述每个代理节点当前最新的可用逻辑资源的上限值与其在所述设定时段内的已用逻辑资源值的均值进行比较;如果所述上限值大于所述均值,则增加所述调度服务器中该代理节点的可用逻辑资源的上限值;如果所述上限值小于所述均值,则降低所述调度服务器中该代理节点的可用逻辑资源的上限值。
本发明的自适应负载均衡作业任务调度装置,所述可用逻辑资源上限统计模块包括:
协方差矩阵求解子模块,用于将每个代理节点在设定时段内各时间点的工作状态指标以及已用逻辑资源值的负数各自按时间顺序排列,形成该代理节点的多维序列,并计算该多维序列的协方差矩阵;
协方差矩阵本征值分解子模块,用于对每个代理节点的多维序列的协方差矩阵进行本征值分解,利用最小本征值对应的本征向量各维系数的归一化值对应计算该代理节点的每个工作状态指标的最优权值wi,i=2,…,I;
可用逻辑资源的上限值生成子模块,用于获取所述每个代理节点在设定时段内的每个工作状态指标的上限值ti,i=2,…,I;根据公式计算出所述每个代理节点当前最新的可用逻辑资源的上限值lr。
本发明的自适应负载均衡作业任务调度装置,所述可用逻辑资源上限调整模块包括:
工作状态指标均值计算子模块,用于求取所述每个代理节点上各工作状态指标在设定时段内的工作状态指标均值;
已用逻辑资源值的均值计算子模块,用于根据公式计算出所述每个代理节点在设定时段内的已用逻辑资源值的均值lc,其中,E(ri(j,k))为所述每个代理节点在设定时段内的工作状态指标均值,ri(j,k)为第i个工作状态指标的第j个序列,wi为每个代理节点的每个工作状态指标的最优权值;
可用逻辑资源值上限调整子模块,用于将所述每个代理节点当前最新的可用逻辑资源的上限值与其在所述设定时段内的已用逻辑资源值的均值进行比较;如果所述上限值大于所述均值,则增加所述调度服务器中该代理节点的可用逻辑资源的上限值;如果所述上限值小于所述均值,则降低所述调度服务器中该代理节点的可用逻辑资源的上限值。
本发明的自适应负载均衡作业任务调度装置,所述调度服务器包括:
作业分配管理模块,用于对每个代理节点判断其可用逻辑资源值否大于作业任务所需逻辑资源值;如果所述作业任务所需逻辑资源值大于所有代理节点的可用逻辑资源值,则不分配所述作业任务,并将其放入待调度队列继续等待;否则,将所述作业任务分配给其中可用逻辑资源值最大的代理节点执行。
本发明通过收集各代理节点的工作状态指标更新对应代理节点的可用逻辑资源的上限值;根据接收到的作业任务所需逻辑资源值及每个代理节点更新后的可用逻辑资源的上限值分配作业任务,从而实现了自适应调整代理节点的可用逻辑资源的上限值。调高上限则该代理节点将被分配到更多作业,有助于提高资源使用率避免资源浪费;调低上限则该代理节点将被分配到更少作业,有助于减轻代理节点负荷和资源使用率,避免处理拥塞。从而实现了根据各代理节点工作负载自适应调节服务器集群系统的作业任务调度,提高整个调度系统的利用效率和稳定性。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
图1为本发明实施例的自适应负载均衡作业任务调度装置的结构示意图;
图2为本发明实施例的自适应负载均衡作业任务调度装置中调度服务器的结构示意图;
图3为本发明实施例的自适应负载均衡作业任务调度装置中调度自适应调整器的结构示意图;
图4为本发明实施例的自适应负载均衡作业任务调度装置中代理节点的结构示意图;
图5为本发明实施例的自适应负载均衡作业任务调度装置中工作状态指标库的结构示意图;
图6为本发明实施例的自适应负载均衡作业任务调度装置中代理节点可用逻辑资源上限统计器的结构示意图;
图7为本发明实施例的自适应负载均衡作业任务调度装置中可用逻辑资源上限调整模块的结构示意图;
图8为本发明实施例的自适应负载均衡作业任务调度方法的流程图;
图9为本发明实施例的自适应负载均衡作业任务调度方法中可用逻辑资源上限自适应调整方法的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
下面结合附图,对本发明的具体实施方式作进一步的详细说明。
参考图1所示,本发明实施例的自适应负载均衡作业任务调度装置包括作业提交装置1、调度服务器2,调度自适应调整器3和代理节点4。
作业提交装置1负责将相关作业任务提交给调度服务器2。
调度服务器2负责根据代理节点4的可用逻辑资源的上限值进行调度,即通过计算接收到的作业任务所需资源以及每个代理节点4更新后的可用逻辑资源的上限值,通过负载均衡方式将作业任务分发给代理节点4执行,同时接收代理节点4返回的作业执行状态。
调度自适应调整器3负责获取每个代理节点4在设定时间段内各时间点的工作状态指标,根据每个代理节点4在设定时间段内各时间点的工作状态指标,对应更新调度服务器2中记录的该代理节点4的可用逻辑资源的上限值。其中,逻辑资源值指执行一个任务所需消耗的资源的虚拟值。
代理节点4负责接收调度服务器2分配的作业任务,并在本机上执行,并将作业执行状态反馈给调度服务器2;同时将自身工作状态指标发送给调度自适应调整器3,以便调度自适应调整器3据此调整调度服务器2的负载均衡参数。
结合图2所示,上述调度服务器2包括:作业分配管理模块201、可用逻辑资源更新模块202、逻辑资源上限存储模块203、已用逻辑存储模块204和作业队列205。
作业队列205负责接收并保存作业提交装置1提交的作业任务,保存的信息包括作业任务编号、所需逻辑资源值等。
作业分配管理模块201用于计算各代理节点4的当前可用逻辑资源值(上限-已用逻辑资源),对每个代理节点4判断其可用逻辑资源值否大于作业任务所需逻辑资源值;如果作业任务所需逻辑资源值大于所有代理节点4的可用逻辑资源值,则不分配作业任务,并将其放入待调度队列继续等待,然后读取下一个待调度作业任务;否则,将作业任务分配给其中可用逻辑资源值最大的代理节点4执行。具体的,作业分配管理模块201负责读取作业队列205中作业任务,获得其所需逻辑资源值,然后读取逻辑资源上限存储模块203、已用逻辑资源存储模块204中数据,计算各代理节点4的当前可用逻辑资源的上限值,若有一部分代理节点4的当前可用逻辑资源值大于作业任务所需逻辑资源值,则将作业任务分配给其中可用逻辑资源值最大的代理节点4执行,并发送代理节点编号以及作业任务编号给可用逻辑资源更新模块202;否则不分配作业任务,并将其放入待调度队列继续等待,然后读取下一个待调度作业任务。同时,作业分配管理模块201还负责接收代理节点4返回的作业执行状态,更新作业队列205中的作业执行状态,并将代理节点编号和作业任务编号发送给可用逻辑资源更新模块202。
可用逻辑资源更新模块202负责接收作业分配管理模块201发送的代理节点编号和作业任务编号。当接收到数据时,可用逻辑资源更新模块202读取作业队列205中的作业任务所需逻辑资源值以及作业执行状态,根据作业执行状态更新已用逻辑资源存储模块204中该代理节点4的已用逻辑资源值。当作业执行状态为“已分配”时,该代理节点4的已用逻辑资源值=原已用逻辑资源值+该作业任务所需逻辑资源值;当作业执行状态为“成功”或“失败”时,该代理节点4的已用逻辑资源值=原已用逻辑资源值-该作业任务所需逻辑资源值。
逻辑资源上限存储模块203负责存储各代理节点4的可用逻辑资源的上限值。已用逻辑资源存储模块204负责存储各代理节点4的当前已用逻辑资源值。
结合图3所示,上述调度自适应调整器3包括:工作状态指标收集模块301、可用逻辑资源上限调整模块303、可用逻辑资源上限统计模块302和工作状态指标库304。其中,工作状态指标收集模块301负责定时采集代理节点4所在物理机上各种工作状态指标值(例如:CPU、内存、IO、网卡等工作状态指标值),插入工作状态指标库304,形成该采集时间点的工作状态指标ri(i=2,…,I)。同时,读取已用逻辑存储模块204中该代理节点4在当前采集时间点的当前已用逻辑资源值并乘以(-1),形成工作状态指标库304中指标r1,用于后续计算可用逻辑资源值的权值。
可用逻辑资源上限统计模块302负责读取工作状态指标库304中的信息,根据每个代理节点4在设定时间段内各时间点的工作状态指标,利用总体最小二乘算法对应计算出该代理节点4当前最新的可用逻辑资源的上限值,并更新到工作状态指标库304的代理节点逻辑资源上限预估表中。
可用逻辑资源上限调整模块303负责读取工作状态指标库304中的信息,根据每个代理节点4的工作状态指标,计算更新调度服务器2中逻辑资源上限存储模块203中各代理节点4的可用逻辑资源的上限值,供调度服务器2按上限型调度机制执行作业调度和所需逻辑资源更新。具体的,该可用逻辑资源上限调整模块303根据每个代理节点4在设定时间段内各时间点的工作状态指标,计算出该代理节点4在设定时段内的已用逻辑资源值的均值;将每个代理节点4当前最新的可用逻辑资源的上限值与其在设定时段内的已用逻辑资源值的均值进行比较;如果上限值大于均值,则增加调度服务器2中该代理节点4的可用逻辑资源的上限值;如果上限值小于均值,则降低调度服务器2中该代理节点4的可用逻辑资源的上限值。
工作状态指标库304负责存储各代理节点4在各时间点的工作状态指标ri(i=2,…,I)。
上述调度自适应调整器3可用来确定调度服务器2中该代理节点4的可用逻辑资源的上限值的调整范围,调整范围的计算为周期性计算,两次计算的时间间隔由工作状态指标库304中参数表的自适应调整参数计算间隔Tc决定。每次计算时采用滑动时间窗方式计算,时间窗口为从最新一个采样时间点开始向后追溯K个采样时间点(K为工作状态指标库304中参数表的上限值统计时间窗中采样点个数)。
结合图4所示,上述代理节点4包含工作状态指标采集和发送模块401和数据处理模块402。
工作状态指标采集和发送模块401收集代理节点4所在物理机上各种工作状态指标,发送给工作状态指标收集模块301。其采集和发送间隔由工作状态指标库304中参数表的工作状态指标采样间隔Ts决定。
数据处理模块402负责接收调度服务器2中作业分配管理模块201发来的作业任务请求,执行该作业任务后将作业执行状态(运行中/成功/失败)返回给作业分配管理模块201。
结合图5所示,上述工作状态指标库304包括代理节点表、代理节点指标上限表、代理节点指标属性表、代理节点逻辑资源上限预估表、代理节点指标信息表以及参数表,各表具体内容如下表所示:
表1:代理节点表
序号 | 域名 | 备注 |
1 | 代理节点编号 | 主键,代理键 |
2 | 代理节点IP | |
3 | 代理节点概述 |
表2:代理节点指标属性表
表3:代理节点指标信息表
表4:代理节点指标上限表
序号 | 域名 | 备注 |
1 | 代理节点编号 | 代理键 |
2 | 指标名 | |
3 | 指标上限值 |
表5:代理节点逻辑资源上限预估表
序号 | 域名 | 备注 |
1 | 代理节点编号 | 主键代理键 |
2 | 逻辑资源上限预估值 |
表6:参数表
序号 | 域名 | 备注 |
1 | 参数名 | 主键 |
2 | 参数值 |
其中,参数名包括:上限统计时间窗中采样点个数K、工作状态指标采样间隔Ts、自适应调整参数计算间隔Tc、可用逻辑资源的上限值上调幅度和可用逻辑资源的上限值下调幅度。
结合图6所示,上述可用逻辑资源上限统计模块302包括:协方差矩阵求解子模块3021、协方差矩阵本征值分解子模块3022和可用逻辑资源的上限值生成子模块3023。其中,
协方差矩阵求解子模块3021用于将每个代理节点4在设定时段内各时间点的工作状态指标以及已用逻辑资源值的负数各自按时间顺序排列,形成该代理节点4的多维序列,并计算该多维序列的协方差矩阵。具体的,假设为第j次求解,协方差矩阵求解子模块3021读取工作状态指标库304中代理节点指标信息表中对应的多行记录,按采样(采集)时间点顺序排列,形成一个序列。设指标为ri(i=2,…,I),则第i个指标ri的第j次序列表示为ri(j,k),j表示本次的次数序号,k表示本次时间窗口的采样点序号(k=1,…,K),其中,r1(j,k)表示代理节点4在各采集时间点的已用逻辑资源值乘以(-1))。求解第j次I个序列的协方差矩阵Mj,Mj中第u行v列元素值为
协方差矩阵本征值分解子模块3022用于对每个代理节点4的多维序列的协方差矩阵Mj进行本征值分解,利用最小本征值(eigen-value)对应的本征向量各维系数的归一化值对应计算该代理节点4的每个工作状态指标的最优权值wi,i=2,…,I。具体的,对于Mj,采用本征值分解,获得最小本征值对应的本征向量Ev=[Ev1,Ev2,…,EvI]T,其中Evi/Ev1即为本征向量各维系数的归一化值,也即计算本代理节点4当前第i种工作状态指标的最优权值wi,i=2,…,I,其中,wi可从“当前最新的可用逻辑资源的上限值”计算过程中获得。可用逻辑资源的上限值生成子模块3023,用于获取每个代理节点4在设定时段内的每个工作状态指标的上限值ti,i=2,…,I;根据公式计算出每个代理节点4当前最新的可用逻辑资源的上限值lr。处理结果更新到工作状态指标库304的代理节点逻辑资源上限预估表中,作为更新后的逻辑资源上限预估值。
结合图7所示,上述可用逻辑资源上限调整模块303包括:工作状态指标均值计算子模块3031、已用逻辑资源值的均值计算子模块3032和可用逻辑资源的上限值调整子模块3033。其中,
工作状态指标均值计算子模块3031,用于求取每个代理节点4上各工作状态指标在设定时段内的工作状态指标均值。具体的,工作状态指标均值计算子模块3031根据公式求取每个代理节点4在设定时段内的工作状态指标均值。其中,r1(j,k)表示代理节点4在各采集时间点的已用逻辑资源值乘以(-1)),ri(j,k)(i=2,…,I)表示第i个工作状态指标的第j次序列,j表示本次的次数序号,k表示本次时间窗口的采样点序号(k=1,…,K)。
已用逻辑资源值的均值计算子模块3032,用于根据公式计算出每个代理节点4在设定时段内的已用逻辑资源值的均值lc,其中,E(ri(j,k))为每个代理节点4在设定时段内的工作状态指标均值(即3031子模块计算结果),ri(j,k)为第i个工作状态指标的第j个序列,wi为每个代理节点4的每个工作状态指标的最优权值。
可用逻辑资源值上限调整子模块3033,用于将每个代理节点4当前最新的可用逻辑资源的上限值lr与其在设定时段内的已用逻辑资源值的均值lc进行比较;如果上限值lr大于均值lc,则增加调度服务器2中该代理节点4的可用逻辑资源的上限值,当前最新可用逻辑资源的上限值=原可用逻辑资源的上限值*(1-降低比例)。其中,减低比例可预先设定,但该场景中新可用逻辑资源的上限值不应小于0;如果上限值lr小于均值lc,则降低调度服务器2中该代理4的可用逻辑资源的上限值,当前最新可用逻辑资源的上限值=原可用逻辑资源的上限值*(1+增加比例)。其中,增加比例可预先设定,但该场景中新可用逻辑资源的上限值不应大于lr。
上述设定时段由工作状态指标库304中参数表中自适应调整参数计算间隔Tc决定。
本发明实施例通过收集各代理节点4的工作状态指标,自适应更新对应代理节点4的可用逻辑资源的上限值;根据接收到的作业任务所需逻辑资源值及每个代理节点4的可用逻辑资源值(更新后的可用逻辑资源的上限值-已用逻辑资源值)分配作业任务,调高上限则该代理节点4将被分配到更多作业,有助于提高资源使用率,避免资源浪费;调低上限则该代理节点4将被分配到更少作业,有助于减轻代理节点4负荷和资源使用率,避免处理拥塞;从而实现了自适应负载均衡作业任务调度,提高整个调度系统的使用效率和稳定性。
参考图8所示,基于上述装置实施例,本发明实施例的自适应负载均衡作业任务调度方法,包括以下步骤:
步骤S801,作业提交装置1提交作业给调度服务器2的作业队列205。
步骤S802,作业分配管理模块201读取作业队列205中待调度作业任务,并获得作业任务所需逻辑资源值。
步骤S803,作业分配管理管理模块201从逻辑资源上限存储模块203以及已用逻辑资源存储模块204中对应读取各代理节点4的逻辑资源的上限值和已用逻辑资源值。
步骤S804,作业分配管理模块201求解各代理节点4可用逻辑资源值(逻辑资源的上限值-已用逻辑资源值)。
步骤S805,作业分配管理模块201判断每个代理节点4的可用逻辑资源值是否大于该作业任务所需逻辑资源值。如果有大于的,则执行步骤S806;否则,执行步骤S802。
步骤S806,作业分配管理管理模块201将作业任务分配给其中可用逻辑资源值(更新后的可用逻辑资源的上限值-已用逻辑资源值)最大的代理节点4执行。
步骤S807,数据处理模块402执行作业任务,并在完成时将结果返回作业分配管理模块201。
步骤S808,作业分配管理模块201通知可用逻辑资源更新模块202,请其对已用逻辑资源存储模块204进行修改,即更新其中对应代理节点4的已用逻辑资源值。
本发明实施例通过收集各代理节点4工作状态指标更新对应代理节点4的可用逻辑资源的上限值;根据接收到的作业任务所需逻辑资源值及每个代理节点4更新后的可用逻辑资源值(更新后的可用逻辑资源的上限值-已用逻辑资源值)分配作业任务,从而实现了自适应调整代理节点4的可用逻辑资源的上限值。调高上限则该代理节点4将被分配到更多作业,有助于提高资源使用率避免资源浪费;调低上限则该代理节点4将被分配到更少作业,有助于减轻代理节点4负荷和资源使用率,避免处理拥塞。从而实现了自适应负载均衡作业任务调度,提高整个调度系统的使用效率和稳定性。
上述本发明实施例的自适应负载均衡作业任务调度方法中逻辑资源上限存储模块203是自适应更新的,结合图9所示,其可用逻辑资源上限自适应调整方法包括如下步骤:
步骤S901,工作状态指标采集和发送模块401定时采集每个代理节点4的工作状态指标(例如cpu使用率等),并发送给工作状态指标收集模块301。
步骤S902,工作状态指标收集模块301接收每个代理节点4的工作状态指标,同时向已用逻辑资源值存储模块204读取每个代理节点4当前已用逻辑资源值并乘以(-1),分别用于更新工作状态指标库304中对应代理节点4的工作状态指标ri,i=2,…,I和r1。
步骤S903,可用逻辑资源上限统计模块302读取工作状态指标库304中设定时段内每个代理节点4的各工作状态指标及其已用逻辑资源值,形成多维序列。
步骤S904,可用逻辑资源上限统计模块302根据步骤S903中获得的多维序列,计算协方差矩阵并执行本征值分解,获得计算逻辑资源值的最佳权值系数,乘以各工作状态指标的上限,生成该代理节点逻辑资源的上限值的新预估结果。
步骤S905,可用逻辑资源上限调整模块303根据步骤S903中获得的序列,计算每个代理节点4在设定时段内的工作状态指标均值。
步骤S906,可用逻辑资源上限调整模块303根据步骤S905中获得的工作状态指标均值lc和步骤S904中获得的逻辑资源的上限预估值生成调整后的逻辑资源的上限值lr。
步骤S907,可用逻辑资源上限调整模块303根据步骤S906的计算结果调整逻辑资源上限存储模块203中对应代理节点4的可用逻辑资源的上限值。本步骤的更新结果作为上述自适应负载均衡作业任务调度方法实施例步骤S803的读取对象。
本发明实施例通过收集各代理节点4的工作状态指标更新对应代理节点4的可用逻辑资源的上限值;根据接收到的作业任务所需逻辑资源值及每个代理节点4可用逻辑资源值(更新后的可用逻辑资源的上限值-已用逻辑资源值)分配作业任务,从而实现了自适应调整代理节点4的可用逻辑资源的上限值。
本领域技术人员还可以了解到本发明实施例列出的各种说明性逻辑块、单元和步骤可以通过硬件、软件或两者的结合来实现。至于是通过硬件还是软件来实现取决于特定的应用和整个系统的设计要求。本领域技术人员可以对于每种特定的应用,可以使用各种方法实现所述的功能,但这种实现不应被理解为超出本发明实施例保护的范围。
本发明实施例中所描述的各种说明性的逻辑块,或单元都可以通过通用处理器,数字信号处理器,专用集成电路(ASIC),现场可编程门阵列或其它可编程逻辑装置,离散门或晶体管逻辑,离散硬件部件,或上述任何组合的设计来实现或操作所描述的功能。通用处理器可以为微处理器,可选地,该通用处理器也可以为任何传统的处理器、控制器、微控制器或状态机。处理器也可以通过计算装置的组合来实现,例如数字信号处理器和微处理器,多个微处理器,一个或多个微处理器联合一个数字信号处理器核,或任何其它类似的配置来实现。
本发明实施例中所描述方法或算法的步骤可以直接嵌入硬件、处理器执行的软件模块、或者这两者的结合。软件模块可以存储于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM或本领域中其它任意形式的存储媒介中。示例性地,存储媒介可以与处理器连接,以使得处理器可以从存储媒介中读取信息,并可以向存储媒介存写信息。可选地,存储媒介还可以集成到处理器中。处理器和存储媒介可以设置于ASIC中,ASIC可以设置于用户终端中。可选地,处理器和存储媒介也可以设置于用户终端中的不同的部件中。
在一个或多个示例性的设计中,本发明实施例所描述的上述功能可以在硬件、软件、固件或这三者的任意组合来实现。如果在软件中实现,这些功能可以存储与电脑可读的媒介上,或以一个或多个指令或代码形式传输于电脑可读的媒介上。电脑可读媒介包括电脑存储媒介和便于使得让电脑程序从一个地方转移到其它地方的通信媒介。存储媒介可以是任何通用或特殊电脑可以接入访问的可用媒体。例如,这样的电脑可读媒体可以包括但不限于RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁性存储装置,或其它任何可以用于承载或存储以指令或数据结构和其它可被通用或特殊电脑、或通用或特殊处理器读取形式的程序代码的媒介。此外,任何连接都可以被适当地定义为电脑可读媒介,例如,如果软件是从一个网站站点、服务器或其它远程资源通过一个同轴电缆、光纤电缆、双绞线、数字用户线(DSL)或以例如红外、无线和微波等无线方式传输的也被包含在所定义的电脑可读媒介中。所述的碟片(disk)和磁盘(disc)包括压缩磁盘、镭射盘、光盘、DVD、软盘和蓝光光盘,磁盘通常以磁性复制数据,而碟片通常以激光进行光学复制数据。上述的组合也可以包含在电脑可读媒介中。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种自适应负载均衡作业任务调度方法,其特征在于,该方法包括以下步骤:
调度自适应调整器获取每个代理节点在设定时间段内各时间点的工作状态指标;
所述调度自适应调整器根据所述每个代理节点在设定时间段内各时间点的工作状态指标,对应更新调度服务器中该代理节点的可用逻辑资源的上限值;
所述调度服务器根据接收到的作业任务所需逻辑资源值,以及所述每个代理节点更新后的可用逻辑资源的上限值,向各代理节点分配所述作业任务;
其中,所述根据所述每个代理节点在设定时间段内各时间点的工作状态指标,对应更新调度服务器中该代理节点的可用逻辑资源的上限值,具体包括:
根据所述每个代理节点在设定时间段内各时间点的工作状态指标,利用总体最小二乘算法对应计算出该代理节点当前最新的可用逻辑资源的上限值;
根据所述每个代理节点在设定时间段内各时间点的工作状态指标,计算出该代理节点在设定时段内的已用逻辑资源值的均值;
将所述每个代理节点当前最新的可用逻辑资源的上限值与其在所述设定时段内的已用逻辑资源值的均值进行比较;
如果所述上限值大于所述均值,则增加所述调度服务器中该代理节点的可用逻辑资源的上限值;如果所述上限值小于所述均值,则降低所述调度服务器中该代理节点的可用逻辑资源的上限值。
2.根据权利要求1所述的自适应负载均衡作业任务调度方法,其特征在于,所述根据所述每个代理节点在设定时间段内各时间点的工作状态指标,利用总体最小二乘算法对应计算出该代理节点当前最新的可用逻辑资源的上限值,具体包括:
将每个代理节点在设定时段内各时间点的工作状态指标以及已用逻辑资源值的负数各自按时间顺序排列,形成该代理节点的多维序列,并计算该多维序列的协方差矩阵;
对每个代理节点的多维序列的协方差矩阵进行本征值分解,利用最小本征值对应的本征向量各维系数的归一化值对应计算该代理节点的每个工作状态指标的最优权值wi,i=2,…,I;
获取所述每个代理节点在设定时段内的每个工作状态指标的上限值ti,i=2,…,I;
根据公式计算出所述每个代理节点当前最新的可用逻辑资源的上限值lr。
3.根据权利要求2所述的自适应负载均衡作业任务调度方法,其特征在于,所述根据所述每个代理节点在设定时间段内各时间点的工作状态指标,计算出该代理节点在设定时段内的已用逻辑资源值的均值,具体包括:
求取所述每个代理节点上各工作状态指标在设定时段内的工作状态指标均值;
根据公式计算出所述每个代理节点在设定时段内的已用逻辑资源值的均值lc,其中E(ri(j,k))为所述每个代理节点在设定时段内的工作状态指标均值,ri(j,k)为第i个工作状态指标的第j个序列,wi为每个代理节点的每个工作状态指标的最优权值。
4.根据权利要求1所述的自适应负载均衡作业任务调度方法,其特征在于,所述根据接收到的作业任务所需逻辑资源值,以及所述每个代理节点更新后的可用逻辑资源的上限值,向各代理节点分配所述作业任务,具体包括:
对每个代理节点判断其可用逻辑资源值否大于作业任务所需逻辑资源值;
如果所述作业任务所需逻辑资源值大于所有代理节点的可用逻辑资源值,则不分配所述作业任务,并将其放入待调度队列继续等待;否则,将所述作业任务分配给其中可用逻辑资源值最大的代理节点执行。
5.一种自适应负载均衡作业任务调度装置,其特征在于,该装置包括:
调度自适应调整器,用于获取每个代理节点在设定时间段内各时间点的工作状态指标,根据所述每个代理节点在设定时间段内各时间点的工作状态指标,对应更新调度服务器中该代理节点的可用逻辑资源的上限值;
调度服务器,用于根据接收到的作业任务所需逻辑资源值,以及所述每个代理节点更新后的可用逻辑资源的上限值,向各代理节点分配所述作业任务;
其中,所述调度自适应调整器包括:
可用逻辑资源上限统计模块,用于根据所述每个代理节点在设定时间段内各时间点的工作状态指标,利用总体最小二乘算法对应计算出该代理节点当前最新的可用逻辑资源的上限值;
可用逻辑资源上限调整模块,用于根据所述每个代理节点在设定时间段内各时间点的工作状态指标,计算出该代理节点在设定时段内的已用逻辑资源值的均值;将所述每个代理节点当前最新的可用逻辑资源的上限值与其在所述设定时段内的已用逻辑资源值的均值进行比较;如果所述上限值大于所述均值,则增加所述调度服务器中该代理节点的可用逻辑资源的上限值;如果所述上限值小于所述均值,则降低所述调度服务器中该代理节点的可用逻辑资源的上限值。
6.根据权利要求5所述的自适应负载均衡作业任务调度装置,其特征在于,所述可用逻辑资源上限统计模块包括:
协方差矩阵求解子模块,用于将每个代理节点在设定时段内各时间点的工作状态指标以及已用逻辑资源值的负数各自按时间顺序排列,形成该代理节点的多维序列,并计算该多维序列的协方差矩阵;
协方差矩阵本征值分解子模块,用于对每个代理节点的多维序列的协方差矩阵进行本征值分解,利用最小本征值对应的本征向量各维系数的归一化值对应计算该代理节点的每个工作状态指标的最优权值wi,i=2,…,I;
可用逻辑资源的上限值生成子模块,用于获取所述每个代理节点在设定时段内的每个工作状态指标的上限值ti,i=2,…,I;根据公式计算出所述每个代理节点当前最新的可用逻辑资源的上限值lr。
7.根据权利要求5所述的自适应负载均衡作业任务调度装置,其特征在于,所述可用逻辑资源上限调整模块包括:
工作状态指标均值计算子模块,用于求取所述每个代理节点上各工作状态指标在设定时段内的工作状态指标均值;
已用逻辑资源值的均值计算子模块,用于根据公式计算出所述每个代理节点在设定时段内的已用逻辑资源值的均值lc,其中,E(ri(j,k))为所述每个代理节点在设定时段内的工作状态指标均值,ri(j,k)为第i个工作状态指标的第j个序列,wi为每个代理节点的每个工作状态指标的最优权值;
可用逻辑资源值上限调整子模块,用于将所述每个代理节点当前最新的可用逻辑资源的上限值与其在所述设定时段内的已用逻辑资源值的均值进行比较;如果所述上限值大于所述均值,则增加所述调度服务器中该代理节点的可用逻辑资源的上限值;如果所述上限值小于所述均值,则降低所述调度服务器中该代理节点的可用逻辑资源的上限值。
8.根据权利要求5所述的自适应负载均衡作业任务调度装置,其特征在于,所述调度服务器包括:
作业分配管理模块,用于对每个代理节点判断其可用逻辑资源值否大于作业任务所需逻辑资源值;如果所述作业任务所需逻辑资源值大于所有代理节点的可用逻辑资源值,则不分配所述作业任务,并将其放入待调度队列继续等待;否则,将所述作业任务分配给其中可用逻辑资源值最大的代理节点执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410211091.3A CN103986766B (zh) | 2014-05-19 | 2014-05-19 | 自适应负载均衡作业任务调度方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410211091.3A CN103986766B (zh) | 2014-05-19 | 2014-05-19 | 自适应负载均衡作业任务调度方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103986766A CN103986766A (zh) | 2014-08-13 |
CN103986766B true CN103986766B (zh) | 2017-07-07 |
Family
ID=51278589
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410211091.3A Active CN103986766B (zh) | 2014-05-19 | 2014-05-19 | 自适应负载均衡作业任务调度方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103986766B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114201306A (zh) * | 2022-02-16 | 2022-03-18 | 长沙市规划勘测设计研究院 | 基于负载均衡技术的多维地理空间实体分布方法及系统 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104581227A (zh) * | 2014-12-31 | 2015-04-29 | 银江股份有限公司 | 一种基于任务调度的流媒体负载均衡方法 |
CN110275770B (zh) * | 2018-03-15 | 2023-09-22 | 阿里巴巴集团控股有限公司 | 任务均衡调度方法、系统、节点及电子设备 |
CN109144689B (zh) * | 2018-06-29 | 2023-06-06 | 华为云计算技术有限公司 | 任务调度方法、装置及计算机程序产品 |
CN109298897A (zh) * | 2018-06-29 | 2019-02-01 | 杭州数澜科技有限公司 | 一种采用资源组的任务分发的系统和方法 |
CN109597685B (zh) * | 2018-09-30 | 2023-06-09 | 创新先进技术有限公司 | 任务分配方法、装置和服务器 |
CN109542586B (zh) * | 2018-11-19 | 2021-10-29 | 郑州云海信息技术有限公司 | 一种节点资源状态更新方法及系统 |
CN109753416A (zh) * | 2018-12-11 | 2019-05-14 | 东软集团股份有限公司 | Agent代理性能控制方法、装置、存储介质及电子设备 |
CN109766182B (zh) * | 2018-12-18 | 2024-09-13 | 平安科技(深圳)有限公司 | 系统资源动态扩缩容方法、装置、计算机设备及存储介质 |
CN109783214B (zh) * | 2018-12-29 | 2021-06-22 | 广东电网有限责任公司广州供电局 | 任务调度控制系统 |
CN110443695A (zh) * | 2019-07-31 | 2019-11-12 | 中国工商银行股份有限公司 | 数据处理方法及其装置、电子设备和介质 |
CN110825535B (zh) * | 2019-10-12 | 2022-06-28 | 中国建设银行股份有限公司 | 一种作业调度的方法和系统 |
CN113806077A (zh) * | 2021-08-20 | 2021-12-17 | 广州云硕科技发展有限公司 | 基于人工智能的数据中心服务器调控方法及装置 |
CN113821330B (zh) * | 2021-11-24 | 2022-03-15 | 腾讯科技(深圳)有限公司 | 任务调度方法、装置、计算机设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102098223A (zh) * | 2011-02-12 | 2011-06-15 | 浪潮(北京)电子信息产业有限公司 | 节点设备调度方法、装置和系统 |
CN102541645A (zh) * | 2012-01-04 | 2012-07-04 | 北京航空航天大学 | 一种基于节点状态反馈的节点任务槽动态调整方法 |
CN102854968A (zh) * | 2012-05-04 | 2013-01-02 | 北京邮电大学 | 一种虚拟机实时能耗计量方法 |
CN102932264A (zh) * | 2012-11-02 | 2013-02-13 | 曙光云计算技术有限公司 | 流量溢出的判断方法和装置 |
CN103763378A (zh) * | 2014-01-24 | 2014-04-30 | 中国联合网络通信集团有限公司 | 基于分布式流式计算系统的任务处理方法、系统及节点 |
-
2014
- 2014-05-19 CN CN201410211091.3A patent/CN103986766B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102098223A (zh) * | 2011-02-12 | 2011-06-15 | 浪潮(北京)电子信息产业有限公司 | 节点设备调度方法、装置和系统 |
CN102541645A (zh) * | 2012-01-04 | 2012-07-04 | 北京航空航天大学 | 一种基于节点状态反馈的节点任务槽动态调整方法 |
CN102854968A (zh) * | 2012-05-04 | 2013-01-02 | 北京邮电大学 | 一种虚拟机实时能耗计量方法 |
CN102932264A (zh) * | 2012-11-02 | 2013-02-13 | 曙光云计算技术有限公司 | 流量溢出的判断方法和装置 |
CN103763378A (zh) * | 2014-01-24 | 2014-04-30 | 中国联合网络通信集团有限公司 | 基于分布式流式计算系统的任务处理方法、系统及节点 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114201306A (zh) * | 2022-02-16 | 2022-03-18 | 长沙市规划勘测设计研究院 | 基于负载均衡技术的多维地理空间实体分布方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103986766A (zh) | 2014-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103986766B (zh) | 自适应负载均衡作业任务调度方法及装置 | |
WO2021179462A1 (zh) | 基于改进量子蚁群算法的Spark平台任务调度方法 | |
CN107239336B (zh) | 一种实现任务调度的方法及装置 | |
KR101957006B1 (ko) | 네트워크 액세스가능 블록 저장을 위한 조정된 승인 제어 | |
US8443373B2 (en) | Efficient utilization of idle resources in a resource manager | |
CN108268318A (zh) | 一种分布式系统任务分配的方法和装置 | |
US20200012602A1 (en) | Cache allocation method, and apparatus | |
CN109995669B (zh) | 分布式限流方法、装置、设备及可读存储介质 | |
JP2007299401A (ja) | 個々のユーザの資源使用量およびその使用量の追跡に基づいた公平な共用分のスケジューリングを行う方法およびシステム | |
CN106464669B (zh) | 基于访问模式的智能文件预取 | |
CN110888714A (zh) | 容器的调度方法、装置和计算机可读存储介质 | |
CN111414070B (zh) | 一种机箱功耗管理方法、系统及电子设备和存储介质 | |
CN113342477A (zh) | 一种容器组部署方法、装置、设备及存储介质 | |
CN110599148B (zh) | 集群数据处理方法、装置、计算机集群及可读存储介质 | |
WO2021093365A1 (zh) | 一种gpu显存管理控制方法及相关装置 | |
CN109196807B (zh) | 网络节点以及操作网络节点以进行资源分发的方法 | |
US20200385726A1 (en) | Oversubscription scheduling | |
US9817698B2 (en) | Scheduling execution requests to allow partial results | |
WO2018196865A1 (en) | Guided optimistic resource scheduling | |
CN110636388A (zh) | 一种业务请求分配方法、系统、电子设备及存储介质 | |
CN103248622B (zh) | 一种自动伸缩的在线视频服务质量保障方法及系统 | |
US8819239B2 (en) | Distributed resource management systems and methods for resource management thereof | |
WO2018133821A1 (en) | Memory-aware plan negotiation in query concurrency control | |
CN106502790A (zh) | 一种基于数据分布的任务分配优化方法 | |
CN115714772A (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 |