本发明涉及计算机应用领域,尤其涉及一种负载均衡技术。
背景技术:
1、针对云计算所存在的虚拟机器配置繁琐等问题,提高终端用户的体验质量,现今出现了一种名为无服务计算的计算范式,它通过对虚拟系统的管理操作,能够减轻云服务的沉重负担。而负载均衡器的实现,是无服务计算能够发展的重要技术基础之一。
2、目前负载均衡器需要解决的最基本的问题是设计在线的工作负载调度和资源分配决策,现今上述问题的解决方案存在以下缺陷:
3、缺少性能保证,对于在工业界的无服务架构上实现的在线负载均衡策略,缺少性能保证(主要是平均响应时间)的方法;对于学术研究公开的在线负载均衡策略,虽然有长期性能的保证,但是它们的性能保证几乎都是建立在充分的假设之上的,在实际的系统中很难满足;并且,如果考虑到异构的服务速率、服务局部性、严格的截止时间和许多其它的现实约束条件,性能保证就更难以实现。
4、不适用期限敏感的作业,现今普遍按照先来先服务的方法运行,但是在在线环境中,由于作业的到达和截止时间是不可预测的,此种策略难以在更有价值但快要截止的作业和更紧急的作业之间进行正确的选择。
技术实现思路
1、本发明针对现有技术中所公开的负载均衡方法不适用期限敏感的作业缺点,提供了一种通过同时考虑时间和空间因素所实现的负载均衡技术。
2、为了解决上述技术问题,本发明通过下述技术方案得以解决:
3、一种负载均衡方法,用于对具有截止日期的在线作业进行资源分配;
4、为目标作业进行资源分配的步骤包括以下步骤:
5、获取目标作业的工作负载、作业到达时间和作业截止时间;
6、基于所述作业到达时间和作业截止时间从集群的资源单元中筛选获得候选资源单元,所述资源单元分别与时间段和资源节点相映射;
7、获取各候选资源单元处理所述目标作业所能承受的最大负载;
8、基于所述工作负载和所述最大负载确定待分配资源单元及相应的资源分配量,生成相应的资源分配策略。
9、作为一种可实施方式:
10、获取所述目标作业于各候选资源单元所对应的效用函数;
11、获取收益函数;
12、基于约束条件、效用函数和收益函数,以整体效益最大化为目标,确定待分配资源单元及相应的资源分配量;
13、所述约束条件包括资源分配量总和小于等于所述工作负载,且资源分配量小于等于相应的最大负载。
14、作为一种可实施方式:
15、根据所述约束条件、所述效益函数和所述收益函数建立整体效益最大化问题;
16、基于拉格朗日乘子法和kkt条件,求解所述整体效益最大化问题,获得待分配资源单元及相应的资源分配量。
17、作为一种可实施方式,整体效益最大化问题为:
18、
19、
20、
21、将第n项作业记为作业n,将第r个资源单元记为资源单元r;
22、上式中:
23、n表示作业的集合;
24、n表示第n项作业,即,作业n;
25、表示作业n的总效益;
26、表示作业n所对应的候选资源单元的集合;
27、r表示第r个资源单元,即,资源单元r;
28、xnr表示资源单元r中为作业n所分配的工作负载大小;
29、表示作业n的工作负载;
30、表示资源单元r处理作业n所能承受的最大负载;
31、计算作业n的总效益的效益函数为:
32、
33、其中:
34、fn(xn)表示作业n的总效用;
35、表示作业n来之前资源单元r的资源使用程度;
36、φr表示资源单元r处理单元工作量的边际成本的非递减估计函数;
37、gnr(xnr)表示资源单元r处理作业n所对应的收益。
38、作为一种可实施方式:
39、作业n的总效用fn(xn)的表达式为:
40、
41、其中:
42、fnr(xnr)表示作业n于资源单元r上所对应的效用函数。
43、作为一种可实施方式:
44、收益函数gnr(xnr)的表达式为:
45、
46、其中:
47、βnr表示作业n在资源单元r上的利润价格;
48、cr表示资源单元r所对应的最大可用负载;
49、表示作业n在资源单元r已占有工作负载与其最大可占用负载的比例。
50、作为一种可实施方式:
51、约束条件还包括:
52、
53、作为一种可实施方式:
54、针对所述整体效益最大化问题,基于拉格朗日乘子法获得目标作业在各候选资源单元上的拉格朗日乘子;
55、基于所述拉格朗日乘子和kkt条件方程组,求解获得待分配资源单元及相应的资源分配量;
56、所述kkt条件方程组为:
57、
58、其中:
59、为资源单元r上,针对作业n,所对应的拉格朗日乘子;
60、βnr表示作业n在资源单元r上的利润价格;
61、cr表示资源单元r所对应的最大可用负载。
62、一种负载均衡器,用于对具有截止日期的在线作业进行资源分配;
63、包括:
64、获取模块,用于获取目标作业的工作负载、作业到达时间和作业截止时间;
65、筛选模块,用于基于所述作业到达时间和作业截止时间从集群的资源单元中筛选获得候选资源单元,所述资源单元分别与时间段和资源节点相映射;
66、提取模块,用于获取各候选资源单元处理所述目标作业所能承受的最大负载;
67、计算模块,用于基于所述工作负载和所述最大负载确定待分配资源单元及相应的资源分配量,生成相应的资源分配策略。
68、一种作业处理系统,包括:负载均衡器,该负载均衡器用于执行如上述任一项所述的负载均衡方法。
69、本发明由于采用了以上技术方案,具有显著的技术效果:
70、本发明通过对资源单元的设计,基于时间和空间两个维度考虑资源分配的方案,与现有先入先服务的方案相比,能够为具有截止日期的作业生成合适的资源分配策略。
71、本发明以整体效益最大化为目标,即,试图同时最大化作业的效用和平台的收入,此方案可以有效地平衡计算负载,并使得任务分配更加合理,从而避免了资源的浪费和性能瓶颈的产生。
1.一种负载均衡方法,其特征在于,用于对具有截止日期的在线作业进行资源分配;
2.根据权利要求1所述的负载均衡方法,其特征在于:
3.根据权利要求2所述的负载均衡方法,其特征在于:
4.根据权利要求3所述的负载均衡方法,其特征在于,整体效益最大化问题为:
5.根据权利要求4所述的负载均衡方法,其特征在于:
6.根据权利要求4所述的负载均衡方法,其特征在于:
7.根据权利要求4所述的负载均衡方法,其特征在于:
8.根据权利要求7所述的负载均衡方法,其特征在于:
9.一种负载均衡器,其特征在于,用于对具有截止日期的在线作业进行资源分配;
10.一种作业处理系统,其特征在于,包括:负载均衡器,该负载均衡器用于执行如权利要求1至8中任一项所述的负载均衡方法。