WEB开发网
开发学院服务器服务器方案 Linux集群之负载平衡原理和实现算法 阅读

Linux集群之负载平衡原理和实现算法

 2008-11-26 10:59:37 来源:WEB开发网   
核心提示: 发送者启动策略 发送者启动策略也引入了一个阀值M来把所有的处理节点划分成轻负载节点和重负载节点,所有当前剩余负载t > M的节点都被称为重负载节点,Linux集群之负载平衡原理和实现算法(6),t < M的节点被称为轻负载节点,发送者启动策略还需要为每个节点定义一个相关域, 则

发送者启动策略

发送者启动策略也引入了一个阀值M来把所有的处理节点划分成轻负载节点和重负载节点,所有当前剩余负载t > M的节点都被称为重负载节点,t < M的节点被称为轻负载节点。发送者启动策略还需要为每个节点定义一个相关域,节点只与它的相关域中的节点进行交互和任务传递。一个直观的相关域的定义是把所有与之相邻的节点作为相关域。

在启动时,所有节点开始执行计算任务。在执行一段时间之后,节点就开始检查其自身是否是重负载节点。如果是重负载节点,则它就试图在相关域中均匀地分布任务。具体地:设该重负载节点的负载为l p,相关域中有K个节点,其负载分别为l 1,……., l k,则平均负载L avg为:

Linux集群之负载平衡原理和实现算法

为了达到均匀分布,应求得重负载节点应该传递给每个相关域中节点的负载量m k。我们首先引入h k以避免负载被迁移到相关域中负载最重的重负载节点。如果L avg> l k,则 ,否则h k= 0。那么m k为

Linux集群之负载平衡原理和实现算法

随后该节点就可以按照m k向各个相关节点发送任务了。

接收者启动策略

接收者启动策略与发送者启动策略除了是由轻负载节点启动,要求其它节点把任务发送给它之外,其它基本相同。

接收者启动策略同样引入M以区分轻、重负载节点,引入相关域以确定交互范围。

在启动时,所有节点开始执行计算任务,经过一段时间之后,一旦某个节点发现自身成为轻负载节点,就试图在它的相关域中均匀地分布负载。具体地:设该轻负载节点的负载为l p ,相关域中有K个节点,其负载分别为l 1 ,……., l k,则平均负载L avg为:

Linux集群之负载平衡原理和实现算法

为了达到均匀分布,应求得相关域中节点应该传递给轻负载节点的负载量m k。我们首先引入权h k以避免负载从负载更轻的相关域中的节点被迁移到该节点。如果L avg< l k, 则 ,否则h k=0。那么m k为:

Linux集群之负载平衡原理和实现算法

随后该节点就可以按照m k发出接受任务的请求了。

上一页  1 2 3 4 5 6 

Tags:Linux 集群 负载

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接