一种负载均衡调度方法及系统与流程

文档序号:17695323发布日期:2019-05-17 21:27阅读:196来源:国知局
一种负载均衡调度方法及系统与流程

本发明涉及负载领域,特别是涉及一种负载均衡调度方法及系统。



背景技术:

在负载均衡调度过程中,需要对服务器集群网络中分布的各个工作节点进行信息收集对比,然而由于新增工作节点的加入,会导致在某一个或多个性能参数下无法与现有的服务器集群中的工作节点进行快速的性能对比,使得负载均衡调度节点无法有效地向新增工作节点调度分配均在均衡任务,进而导致负载均衡性能受到影响。因此,采用自适应调整方法计算负载均衡调度中新增工作节点引发的信息缺失。

目前,存在基于偏好关系的信息补全技术分为两大类,一类为基于线性/非线性规划方法,通过建立数学规划模型来计算缺失的信息,但是需要进行大量的数学计算和辅助工具来求解数学模型,另一类为迭代法,不需要建立数学规划模型,但是迭代次数繁多并且极易受到预先设定的对比节点集合中节点对的顺序影响。



技术实现要素:

本发明的目的是提供一种能够提高均衡调度精度的负载均衡调度方法及系统。

为实现上述目的,本发明提供了如下方案:

一种调度方法,所述调度方法包括:

采集多个工作节点提供的性能参数,获得性能参数集,所述工作节点为承担负载均衡工作任务的服务器,多个所述服务器设置在承担负载均衡的服务器集群网络中;获取所述服务器集群网络的负载状态;

根据所述性能参数集和所述负载状态建立调度偏好矩阵;

将所述调度偏好矩阵的每个子矩阵映射为一个有向关系图;

根据所述有向关系图动态调整所述服务器集群网络中的负载运行状态至所述服务器集群网络中的负载保持均衡。

可选的,所述性能参数集具体包括:cpu占比、运行内存占比、网卡占比、部件性能指标;

所述cpu占比为所述cpu执行负载均衡任务运算时间除以所述cpu运行总时间;

所述运行内存占比为用于承担负载均衡任务的内存占用量除以总的内存容量;

所述网卡占比为网卡实际的传输速率除以理论传输速率;

所述部件性能指标为与负载均衡任务相关的性能指标。

可选的,所述根据所述性能参数集和所述负载状态建立调度偏好矩阵具体包括:

采集多个所述工作节点构成的工作节点集合,获得工作节点集a={a1,a2,a3,...,am};

所述工作节点集a={a1,a2,a3,...,am}对应的所述性能参数集c={c1,c2,...,cm};

根据所述工作节点集a={a1,a2,a3,...,am}对所述性能参数集c={c1,c2,...,cm}产生的偏好调度关系建立调度偏好矩阵p;

p=(p(1),p(2),...,p(m));

其中,

p(t)为所述调度偏好矩阵p的对应的性能参数ct的子矩阵,p(t)ij为在性能参数ct下工作节点ai对应aj的性能对比情况计算值,确定调度偏好值。

可选的,所述根据所述有向关系图动态调整所述服务器集群网络中的负载运行状态至所述服务器集群网络中的负载保持均衡具体包括:

判断所述有向关系图中是否存在孤立点,如果是,不修复所述有向关系图;否则,获取所述有向关系图中出度满足的初始顶点ai;

计算与所述初始顶点ai相连的顶点的出度,按照所述出度的降序排列所述出度对应的顶点,获得多个所述顶点的降序排列集合{a1,a2,...,at};

以所述初始顶点ai为起点,经由路径顶点al到达最终顶点aj的任一相连节点的长度为2的有向路径path(al,aj);

判断是否存在一条从所述最终顶点aj到所述路径顶点al的原边,如果是,从所述有向关系图中搜索下一个所述初始顶点aj到所述路径顶点al的原边;否则,在所述有向关系图中添加一条有向边,形成一个以所述初始顶点ai为起点的三元有向环;

根据模糊偏好关系的相加一致性原理计算增加的有向边的关联值μg(aj→ai);

添加一条有向边e(ai→aj),根据偏好关系的可加互补性计算关联值μg(ai→aj);

μg(ai→aj)=1-μg(aj→ai);

计算所有与所述路径顶点al相连的全部顶点对应的关联值;

将所述关联值回填到关系矩阵补全缺失信息,获得性能参数ct下所述初始节点ai对所述最终节点aj的偏好值pij;

根据所述偏好值pij动态调整所述服务器集群网络中的负载运行状态至所述服务器集群网络中的负载保持均衡。

可选的,所述计算所有与所述路径顶点al相连的全部顶点对应的关联值还包括:

判断一条有向边e(aj→ai)是否能由通过多个三元环建立,如果是,则存在多个关联值;否则,将所有关联值的平均值作为最终关联值。

一种调度系统,所述调度系统包括:

性能参数获取模块,用于采集多个工作节点提供的性能参数,获得性能参数集,所述工作节点为承担负载均衡工作任务的服务器,多个所述服务器设置在承担负载均衡的服务器集群网络中;获取所述服务器集群网络的负载状态;

矩阵建立模块,用于根据所述性能参数集和所述负载状态建立调度偏好矩阵;

矩阵映射模块,用于将所述调度偏好矩阵的每个子矩阵映射为一个有向关系图;

动态调整模块,用于根据所述有向关系图动态调整所述服务器集群网络中的负载运行状态至所述服务器集群网络中的负载保持均衡。

可选的,所述性能参数获取模块具体包括:

cpu占比单元,用于所述cpu占比为所述cpu执行负载均衡任务运算时间除以所述cpu运行总时间;

运行内存占比单元,用于所述运行内存占比为用于承担负载均衡任务的内存占用量除以总的内存容量;

网卡占比单元,用于所述网卡占比为网卡实际的传输速率除以理论传输速率;

性能指标单元,用于所述部件性能指标为与负载均衡任务相关的性能指标。

可选的,所述矩阵建立模块具体包括:

工作点采集单元,用于采集多个所述工作节点构成的工作节点集合,获得工作节点集a={a1,a2,a3,...,am};所述工作节点集a={a1,a2,a3,...,am}对应的所述性能参数集c={c1,c2,...,cm};

偏好矩阵确定单元,用于根据所述工作节点集a={a1,a2,a3,...,am}对所述性能参数集c={c1,c2,...,cm}产生的偏好调度关系建立调度偏好矩阵p;

p=(p(1),p(2),...,p(m));

其中,

p(t)为所述调度偏好矩阵p的对应的性能参数ct的子矩阵,p(t)ij为在性能参数ct下工作节点ai对应aj的性能对比情况计算值,确定调度偏好值。

可选的,所述动态调整模块具体包括:

判断单元,用于判断所述有向关系图中是否存在孤立点;

初始顶点获取单元,用于获取所述有向关系图中出度满足的初始顶点ai;

出度计算单元,用于计算与所述初始顶点ai相连的顶点的出度,按照所述出度的降序排列所述出度对应的顶点,获得多个所述顶点的降序排列集合{a1,a2,...,at};

有向路径建立单元,用于以所述初始顶点ai为起点,经由路径顶点al到达最终顶点aj的任一相连节点的长度为2的有向路径path(al,aj);

原边存在判断单元,用于判断是否存在一条从所述最终顶点aj到所述路径顶点al的原边;

搜索单元,用于从所述有向关系图中搜索下一个所述初始顶点aj到所述路径顶点al的原边;

有向边添加单元,用于在所述有向关系图中添加一条有向边,形成一个以所述初始顶点ai为起点的三元有向环;

关联值计算单元,用于根据模糊偏好关系的相加一致性原理计算增加的有向边的关联值μg(aj→ai);

添加一条有向边e(ai→aj),根据偏好关系的可加互补性计算关联值μg(ai→aj);

μg(ai→aj)=1-μg(aj→ai);

计算所有与所述路径顶点al相连的全部顶点对应的关联值;

偏好值确定单元,用于将所述关联值回填到关系矩阵补全缺失信息,获得性能参数ct下所述初始节点ai对所述最终节点aj的偏好值pij;

调整单元,用于根据所述偏好值pij动态调整所述服务器集群网络中的负载运行状态至所述服务器集群网络中的负载保持均衡。

根据本发明提供的具体实施例,本发明公开了以下技术效果:本发明公开了一种调度方法及系统,采集多个工作节点提供的性能参数,所述工作节点为承担负载均衡工作任务的服务器,多个所述服务器设置在承担负载均衡服务器集群网络中,获取所述服务器集群网络的负载状态;根据所述性能参数集和所述负载。能够对多个性能参数下向服务器集群网络中新增工作节点后出现的缺失调度偏好信息进行补全,通过多工作节点调度偏好关系构建,整合工作节点的全部性能参数,通过负载均衡调度节点针对各参数对各工作节点的调度偏好建立模糊关系矩阵进行缺失信息的计算。

采用有向图的方式对服务器集群网络中工作节点之间的关系进行建模和缺失信息的补全,能够直观有效地判断新增工作节点加入后如何修正负载均衡调度策略,以充分发挥新增工作节点的工作效能,计算方法简单;同时,由于在搜索待修复节点过程中利用了有向图节点的出度,能够确定节点所需对比的次数较少,提高信息补全过程的效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明提供的调度方法的流程图;

图2为本发明提供的调度系统的组成框图;

图3为本发明提供的有向关系图的示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明的目的是提供一种能够提高均衡调度精度的负载均衡调度方法及系统。

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

如图1所示,本发明提供了一种调度方法,所述调度方法包括:

步骤100:采集多个工作节点提供的性能参数,获得性能参数集,所述工作节点为承担负载均衡工作任务的服务器,多个所述服务器设置在承担负载均衡的服务器集群网络中;获取所述服务器集群网络的负载状态;

步骤200:根据所述性能参数集和所述负载状态建立调度偏好矩阵;

步骤300:将所述调度偏好矩阵的每个子矩阵映射为一个有向关系图;

步骤400:根据所述有向关系图动态调整所述服务器集群网络中的负载运行状态至所述服务器集群网络中的负载保持均衡。

所述性能参数集具体包括:cpu占比、运行内存占比、网卡占比、部件性能指标;

所述cpu占比为所述cpu执行负载均衡任务运算时间除以所述cpu运行总时间;

所述运行内存占比为用于承担负载均衡任务的内存占用量除以总的内存容量;

所述网卡占比为网卡实际的传输速率除以理论传输速率;

所述部件性能指标为与负载均衡任务相关的性能指标。

如图3所示,将所述调度偏好矩阵的每个子矩阵映射为一个有向关系图。

工作节点集合a={a1,a2,…,am}中的各个工作节点作为有向关系图g的顶点,如果矩阵p中存在值pij,则构建一条从ai到aj的有向边e(ai→aj),其代表工作节点ai和aj存在负载调度通路,该边的关联值μg(ai→aj)为节点ai针对aj的调度偏好值pij,即μg(ai→aj)=pij,以此反映负载均衡调度节点在开展负载任务调度时具备的可行任务调度方案和任务调度分配依据。a1与a2间的性能对比信息缺失。

如果所建立的有向图中的每对工作节点ai与aj间都存在两条有向边e(ai→aj)和e(aj→ai),则该图为完全有向图,则意味着信息完全,每个工作节点都与其他工作节点进行了比对,即进行了(n-1)比对,则图3中的g中任一顶点的出度和入度都是(n-1)。

所述根据所述性能参数集和所述负载状态建立调度偏好矩阵具体包括:

采集多个所述工作节点构成的工作节点集合,获得工作节点集a={a1,a2,a3,...,am};

所述工作节点集a={a1,a2,a3,...,am}对应的所述性能参数集c={c1,c2,...,cm};

根据所述工作节点集a={a1,a2,a3,...,am}对所述性能参数集c={c1,c2,...,cm}产生的偏好调度关系建立调度偏好矩阵p;

p=(p(1),p(2),...,p(m));

其中,

p(t)为所述调度偏好矩阵p的对应的性能参数ct的子矩阵,p(t)ij为在性能参数ct下工作节点ai对应aj的性能对比情况计算值,确定调度偏好值。

所述根据所述有向关系图动态调整所述服务器集群网络中的负载运行状态至所述服务器集群网络中的负载保持均衡具体包括:

判断所述有向关系图中是否存在孤立点,如果是,不修复所述有向关系图;否则,获取所述有向关系图中出度满足的初始顶点ai;

计算与所述初始顶点ai相连的顶点的出度,按照所述出度的降序排列所述出度对应的顶点,获得多个所述顶点的降序排列集合{a1,a2,...,at};

以所述初始顶点ai为起点,经由路径顶点al到达最终顶点aj的任一相连节点的长度为2的有向路径path(al,aj);

判断是否存在一条从所述最终顶点aj到所述路径顶点al的原边,如果是,从所述有向关系图中搜索下一个所述初始顶点aj到所述路径顶点al的原边;否则,在所述有向关系图中添加一条有向边,形成一个以所述初始顶点ai为起点的三元有向环;

根据模糊偏好关系的相加一致性原理计算增加的有向边的关联值μg(aj→ai);

添加一条有向边e(ai→aj),根据偏好关系的可加互补性计算关联值μg(ai→aj);

μg(ai→aj)=1-μg(aj→ai);

计算所有与所述路径顶点al相连的全部顶点对应的关联值;

将所述关联值回填到关系矩阵补全缺失信息,获得性能参数ct下所述初始节点ai对所述最终节点aj的偏好值pij;

根据所述偏好值pij动态调整所述服务器集群网络中的负载运行状态至所述服务器集群网络中的负载保持均衡。

进一步的,所述计算所有与所述路径顶点al相连的全部顶点对应的关联值还包括:

判断一条有向边e(aj→ai)是否能由通过多个三元环建立,如果是,则存在多个关联值;否则,将所有关联值的平均值作为最终关联值。

如图2所示,本发明还提供了一种调度系统,所述调度系统包括:

性能参数获取模块1,用于采集多个工作节点提供的性能参数,获得性能参数集,所述工作节点为承担负载均衡工作任务的服务器,多个所述服务器设置在承担负载均衡的服务器集群网络中;获取所述服务器集群网络的负载状态;

矩阵建立模块2,用于根据所述性能参数集和所述负载状态建立调度偏好矩阵;

矩阵映射模块3,用于将所述调度偏好矩阵的每个子矩阵映射为一个有向关系图;

动态调整模块4,用于根据所述有向关系图动态调整所述服务器集群网络中的负载运行状态至所述服务器集群网络中的负载保持均衡。

所述性能参数获取模块1具体包括:

cpu占比单元,用于所述cpu占比为所述cpu执行负载均衡任务运算时间除以所述cpu运行总时间;

运行内存占比单元,用于所述运行内存占比为用于承担负载均衡任务的内存占用量除以总的内存容量;

网卡占比单元,用于所述网卡占比为网卡实际的传输速率除以理论传输速率;

性能指标单元,用于所述部件性能指标为与负载均衡任务相关的性能指标。

所述矩阵建立模块2具体包括:

工作点采集单元,用于采集多个所述工作节点构成的工作节点集合,获得工作节点集a={a1,a2,a3,...,am};所述工作节点集a={a1,a2,a3,...,am}对应的所述性能参数集c={c1,c2,...,cm};

偏好矩阵确定单元,用于根据所述工作节点集a={a1,a2,a3,...,am}对所述性能参数集c={c1,c2,...,cm}产生的偏好调度关系建立调度偏好矩阵p;

p=(p(1),p(2),...,p(m));

其中,

p(t)为所述调度偏好矩阵p的对应的性能参数ct的子矩阵,p(t)ij为在性能参数ct下工作节点ai对应aj的性能对比情况计算值,确定调度偏好值。

所述动态调整模块4具体包括:

判断单元,用于判断所述有向关系图中是否存在孤立点;

初始顶点获取单元,用于获取所述有向关系图中出度满足的初始顶点ai;

出度计算单元,用于计算与所述初始顶点ai相连的顶点的出度,按照所述出度的降序排列所述出度对应的顶点,获得多个所述顶点的降序排列集合{a1,a2,...,at};

有向路径建立单元,用于以所述初始顶点ai为起点,经由路径顶点al到达最终顶点aj的任一相连节点的长度为2的有向路径path(al,aj);

原边存在判断单元,用于判断是否存在一条从所述最终顶点aj到所述路径顶点al的原边;

搜索单元,用于从所述有向关系图中搜索下一个所述初始顶点aj到所述路径顶点al的原边;

有向边添加单元,用于在所述有向关系图中添加一条有向边,形成一个以所述初始顶点ai为起点的三元有向环;

关联值计算单元,用于根据模糊偏好关系的相加一致性原理计算增加的有向边的关联值μg(aj→ai);

添加一条有向边e(ai→aj),根据偏好关系的可加互补性计算关联值μg(ai→aj);

μg(ai→aj)=1-μg(aj→ai);

计算所有与所述路径顶点al相连的全部顶点对应的关联值;

偏好值确定单元,用于将所述关联值回填到关系矩阵补全缺失信息,获得性能参数ct下所述初始节点ai对所述最终节点aj的偏好值pij;

调整单元,用于根据所述偏好值pij动态调整所述服务器集群网络中的负载运行状态至所述服务器集群网络中的负载保持均衡。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1