当前位置:文档之家› 负载均衡技术综述

负载均衡技术综述

负载均衡技术综述
负载均衡技术综述

?2004 Journal of Software 软件学报

负载均衡技术综述*

殷玮玮1+

1(南京大学软件学院,江苏南京210093)

Overview of Load Balancing Technology

YIN Wei-Wei1+

1(Department of Software Institute, Nanjing University, Nanjing 210093, China)

+ Corresponding author: Phn +86-**-****-****, Fax +86-**-****-****, E-mail: bingyu0046@https://www.doczj.com/doc/154989149.html,, https://www.doczj.com/doc/154989149.html, Received 2000-00-00; Accepted 2000-00-00

Yin WW. Overview of Load Balancing Technology. Journal of Software, 2004,15(1):0000~0000.

https://www.doczj.com/doc/154989149.html,/1000-9825/15/0000.htm

Abstract: Load balance technology based on existing network structure, provides a cheap and efficient method for expanding bandwidth of the server and increase the server throughput, strengthens network data processing ability, increases network flexibility and availability. This paper introduces in detail the three aspects: the classification of load balancing, load balancing and load balancing algorithm, then compares the load balancing algorithm commonly used and their advantages and disadvantages, and describes the dynamic load balancing strat egy and three kinds of scheduling methods.

Key words: load balancing technology; the load conditions; the static load balancing algorithm; the dynamic load balancing algorithm

摘要: 负载均衡技术基于现有网络结构,提供了一种扩展服务器带宽和增加服务器吞吐量的廉价有效的方法,加强了网络数据处理能力,提高了网络的灵活性和可用性。本文从负载均衡技术的分类、负载均衡技术和负载均衡算法三个方面对负载均衡做了详细介绍,对常用负载均衡算法做了优缺点比较,并对动态负载均衡算法遵循的策略和三种调度方式做了阐述。

关键词: 负载均衡技术; 负载状况;静态负载均衡算法;动态负载均衡算法

中图法分类号: ****文献标识码: A

随着大规模并行分布处理系统,特别是网络工作站机群系统的广泛应用,如何采取有效的调度策略来平衡各结点(机)的负载,从而提高整个系统资源的利用率,已成为人们的研究热点。负载均衡技术基于现有网络结构,提供了一种扩展服务器带宽和增加服务器吞吐量的廉价有效的方法,加强了网络数据处理能力,提高了网络的灵活性和可用性。负载均衡的应用,能够有效地解决网络拥塞问题,能够就近提供服务,实现地理位置无关性(异地负载均衡)。同时,这项技术还能提高服务器的响应速度,提高服务器及其它资源的利用

*Supported by the **** Foundation of China under Grant No.****, **** (基金中文完整名称); the **** Foundation of China under Grant No.****, **** (基金中文完整名称)

作者简介: 殷玮玮(1992-),女,河南舞阳人,硕士,主要研究领域为分布式计算,负载均衡.

2 Journal of Software软件学报2004,15(1) 效率,避免网络关键部位出现单点失效,从而为用户提供更好的访问质量。

1 负载均衡技术的分类

1.1 软件和硬件负载均衡

从负载均衡采用的设备可将其分为软件负载均衡和硬件负载均衡。

软件负载均衡解决方案是指在一台或多台服务器相应的操作系统上安装一个或多个附加软件来实现负载均衡,如DNS(Domain Name Server) Load Balance等,它的优点是基于特定环境,配置简单,使用灵活,成本低廉,可以满足一般的负载均衡需求。软件解决方案缺点也较多,因为每台服务器上安装额外的软件运行会消耗系统不定量的资源,越是功能强大的模块,消耗得越多,所以当连接请求特别大的时候,软件本身会成为服务器工作成败的一个关键;软件可扩展性并不是很好,受到操作系统的限制;由于操作系统本身的Bug 往往会引起安全问题。

硬件负载均衡解决方案是直接在服务器和外部网络间安装负载均衡设备,这种设备我们通常称之为负载均衡器,由于专门的设备完成专门的任务,独立于操作系统,整体性能得到大幅提高,加上多样化的负载均衡策略,智能化的流量管理,可达到最佳的负载均衡需求[1]。

1.2 本地和全局负载均衡

负载均衡从其应用的地理结构上分为本地负载均衡(Local Load Balance)和全局负载均衡(Global Load Balance,也叫地域负载均衡),本地负载均衡是指对本地的服务器群做负载均衡,全局负载均衡是指对分别放置在不同的地理位置、有不同网络结构的服务器群间做负载均衡。

本地负载均衡能有效地解决数据流量过大、网络负荷过重的问题,并且不需花费昂贵开支购置性能卓越的服务器,充分利用现有设备,避免服务器单点故障造成数据流量的损失。其有灵活多样的均衡策略把数据流量合理地分配给服务器群内的服务器共同负担。即使是再给现有服务器扩充升级,也只是简单地增加一个新的服务器到服务群中,而不需改变现有网络结构、停止现有的服务。

全局负载均衡主要用于在一个多区域拥有自己服务器的站点,为了使全球用户只以一个IP 地址或域名就能访问到离自己最近的服务器,从而获得最快的访问速度;也可用于子公司分散站点分布广的大公司通过Intranet(企业内部互联网)来达到资源统一合理分配的目的。

1.3 静态和动态负载均衡

负载均衡包括静态负载平衡和动态负载平衡。只是利用系统负载的平均信息,而忽视系统当前的负载状况的方法被称为静态负载均衡;根据系统当前的负载状况来调整任务划分的方法被称为动态负载均衡[2]。此内容将在第3小节详述。

1.4 网络层次上的负载均衡

针对网络上负载过重的不同瓶颈所在,从网络的不同层次入手,我们可以采用相应的负载均衡技术来解决现有问题。随着带宽增加,数据流量不断增大,网络核心部分的数据接口将面临瓶颈问题,原有的单一线路将很难满足需求,而且线路的升级又过于昂贵甚至难以实现,这时就可以考虑采用链路聚合(Trunking)技术。

链路聚合技术(第二层负载均衡)将多条物理链路当作一条单一的聚合逻辑链路使用,网络数据流量由聚合逻辑链路中所有物理链路共同承担,由此在逻辑上增大了链路的容量,使其能满足带宽增加的需求。

2 负载均衡技术

负载均衡有两方面的含义:首先,将大量的并发访问或数据流量分担到多台节点设备上分别处理,减少用户等待响应的时间;其次,单个重负载的运算分担到多台节点设备上做并行处理,每个节点设备处理结束后,将结果汇总,返回给用户,系统处理能力得到大幅度提高。负载均衡能够均衡所有的服务器和应用之间

作者名等:题目 3

的通信负载,根据实时响应时间进行判断,将任务交由负载最轻的服务器来处理,以实现真正的智能通信管理和最佳的服务性能。目前,负载均衡技术面临三大问题:服务器的负载状况的评价、如何获取以及获取后如何处理[3]。

2.1 负载状况

2.1.1 负载状况的评价

负载状况的评价由三类组成:静态的、统计类的和动态的。静态的由资源决定,可以数字化评价;统计类的只能作为网站扩充的依据;动态地使用探测结果来评价。

2.1.2 负载状况的获取

由于系统中各服务器根据所有服务器的负载情况来决定新的用户访问请求的取舍,因此,各服务器必须知道其他服务器的负载状况,这要求每个服务器必须将自己的当前负载及时通知其他服务器。探知负载状况的技术主要有3种:

1)利用agent技术使用网管协议SNMP:在需要的服务器上运行设计的agent,定时通知分配器,从而得

到服务器的确切情况。

2)第三方的软件:有一些第三方开发的软件可以完成这种工作,需要分配器有相应的接口,从而可以

调整分配的结果。

3)自己开发软件去主动获取:最简单的集成方法就是自己去开发,由分配器去探测服务器的负载状况。

2.2 负载均衡技术

根据实现层次不同,可将负载均衡技术分为如下几类:

2.2.1 基于客户端的负载均衡

这种模式需要每个客户程序均具备一定的服务器集群知识,在客户端运行特定的程序,该程序通过定期或不定期的收集服务器群的运行参数:CPU占用情况、磁盘IO、内存等动态信息,再根据某种选择策略,找到可以提供服务的最佳服务器,将本地的应用请求发向它。整个过程对于应用程序来说是完全透明的,所有的工作都在运行时处理。比如,在Berkeley研究的smart client中,服务提供一个JavaApplet在客户方浏览器中运行,Applet向各个服务器发请求来收集服务器的负载等信息,再根据这些信息将客户的请求发到相应的服务器;当服务器没有响应时,Applet向另一个服务器转发请求,实现高可用性。

这种技术存在明显的通用性问题,因为每一个客户端都要安装这个特殊的程序;并且,为了保证应用层的透明运行,需要针对每一个应用程序加以修改,要对代码进行重新开发,工作量比较大,因而这种技术仅适用于特殊的应用场合。

2.2.2 应用服务器的负载均衡

如果将客户端的负载均衡层移植到某一个中间平台,形成三层结构,则客户端应用可以不需要做特殊的修改,透明的通过中间层应用服务器将请求均衡到相应的服务结点。比较常见的实现手段就是反向代理技术。通过反向代理服务器,可以将请求按一定的策略转发给多台服务器,或者可以直接将缓存的数据返回客户端,这样的加速模式在一定程度上可以提升客户端的访问速度,从而达到负载均衡的目的,目前广泛采用的有HTTP 反向代理技术。

然而,反向代理技术必须为每一种服务都专门开发一个反向代理服务器,这样就限制了反向代理负载均衡技术的应用范围,现在一般都用于对Web服务器的负载均衡;随着并发连接数量的增加,代理服务器本身的负载也会变得非常大,最后反向代理服务器本身会成为服务的瓶颈。

2.2.3 基于DNS域名系统的负载均衡

最早的负载均衡技术是通过DNS轮循来实现的,DNS负载均衡技术是在DNS服务器中为同一个主机名配置多个IP地址,在应答DNS查询时,DNS服务器对每个查询将以DNS文件中主机记录的IP 地址按顺序返回不同的解析结果,将客户端的访问引导到不同的机器上去,使得不同的客户端访问不同的服务器,从而达到负载均衡的目的。其中最为著名的是NCSA Web服务器。

4 Journal of Software软件学报2004,15(1)

基于DNS的方法简单易行,没有瓶颈问题,但是不能考虑距离远近,减少记录的有效期TTL易造成网络信息冗余。尽管如此,它还是一种非常有效的做法,被包括Yahoo在内的很多大型网站采用[4]。DNS负载均衡存在的缺点是DNS负载均衡采用的是简单的轮循负载算法,无法区分服务器的差异,不能做到为性能较好的服务器多分配请求。此外,为了使地址能随机分配,保证不同的客户计算机能均匀获得不同的地址,就应使刷新时间尽量短,不同地方的DNS服务器能更新对应的地址,达到随机获得地址,然而将过期时间设置得过短,将使DNS流量大增,而造成额外的网络问题。

2.2.4 高层协议的负载均衡

高层协议负载均衡技术通常是指Web内容交换或七层交换,该方法综合考虑客户请求的内容,如URL名称、类型、Cookies等,提供了一种对访问流量的高层控制方式。Web内容交换技术检查所有的HTTP报头,根据报头内的信息来执行负载均衡的决策。常见的技术实现主要是依靠HTTP协议中的重定向功能等。

Web内容交换负载均衡优点表现在如下几个方面:

1)通过对HTTP报头的检查,可以检测出HTTP400、500和600系列的错误信息,因而能透明地将连接请

求重新定向到另一台服务器,避免应用层故障。

2)可根据流经的数据类型(如判断数据包是图像文件、压缩文件或多媒体文件格式等),把数据流量引向

相应内容的服务器来处理,增加系统性能。

3)能根据连接请求的类型,如是普通文本、图像等静态文档请求,还是asp.cgi等的动态文档请求,把相

应的请求引向相应的服务器来处理,提高系统的性能及安全性。

2.2.5 网络接入负载均衡

即第四层交换技术,很多硬件厂商已经将这种技术集成在他们的交换机或路由器中,已经被广泛用于构建各种服务器集群。它一般采用随机选择、根据服务器的连接数量或者响应时间进行选择的负载均衡策略来分配负载,对外提供一个一致的IP 地址,并映射为多个内部IP地址,对每次TCP和UDP连接请求,根据其访问的端口号,按照即定的策略动态选择一个内部地址,将数据包转发到该地址上,达到负载均衡的目的,例如采用NAT负载均衡技术。

NAT负载均衡是一种比较完善的负载均衡技术,起着NAT负载均衡功能的设备一般处于内部网到外部网间的网关位置,如路由器、防火墙、四层交换机、专用负载均衡器等均衡算法也较灵活,如随机选择、最少连接数及响应时间等来分配负载,NAT负载均衡可以通过软件或者硬件方式来实现。

2.2.6 传输链路负载均衡

随着高带宽应用需求不断增大时( 例如Web访问、文档传输及VOD视频、IP电话等),网络核心部位如交换机、服务器、路由器等的数据链路将产生瓶颈问题,这将会导致客户应用请求的响应时间大大增加,同时单一的访问链路不可避免的存在单点故障问题,网络的可靠性没有保障。链路聚合技术为消除传输链路上的瓶颈与不可靠因素提供了成本低廉的解决方案。

链路聚合技术是将多条线路的传输容量融合成一个单一的逻辑链路来使用,每条线路都用于网络传输,扩大了网络的传输容量,其中的某条线路断开也不会影响到网络的运行。目前广泛采用的链路聚合技术主要有以下几种:

1)IMUX反转多路复用器工作在T1/E1的比特层,可以捆绑多个同步的DS1信道来传输数据,实现负载均

衡,该技术目前已经广泛用于广域网接入。

2)IMA是另外一种基于ATM的多线路的反向多路复用技术,能够运行在使用ATM路由器的平台上。

3)基于路由器的多重链路PPP,又称MP或MLP,是应用于使用PPP封装数据链路的路由器负载平衡技术。

MP可以将大的PPP数据包分解成小的数据段,根据一定策略再将其分发给平行的多个线路,主要用于广域网链路的备份及广域网连接带宽的扩展。

4)基于网卡的链路聚合,自动负载均衡(Adaptive Load Balancing,简称ALB)和网卡冗余(Adapter Fault

Tolerance,简称AFT)已经在很多产品中实现,如Intel的多端口网卡,采用这些技术可以大大提高了服务器的网络吞吐量及可靠性,不过这项技术需要操作系统驱动层和网络交换机的支持。

作者名等:题目 5

3 常用负载均衡算法

影响负载均衡的因素有三个,分别是算法、网络拓扑以及负载均衡的粒度[5],下文对负载均衡算法进行研究。负载均衡算法包括两种:静态负载均衡和动态负载均衡。

3.1 静态负载均衡算法

静态负载均衡不管各个成员服务器运行时刻的负载情况,而只是根据预先设定的分配方案对用户的请求进行分配。轮叫调度算法(Round Robin)也是一种比较常见的静态算法,即把客户请求依次分派给各个成员服务器,例如,把第i个请求分配给服务器S k,k = i mod N。该算法的优点是其简洁性,无需记录当前所有连接的状态,是一种无状态调度。轮叫调度算法假设所有服务器处理性能均相同,相对简单,但是不适用于服务器组中处理性能不一的情况,而且当请求服务时间变化较大时,容易导致服务器间的负载不平衡[6]。对于异构系统,也可以采用上述类似的按处理能力比例分配的处理方法[7]。

3.2 动态负载均衡算法

由于影响客户访问频率的因素很多,且难以预测,因此静态调度往往不能令人满意。此时可以根据各个服务器上任务执行实际状态的变化,随时动态地调整任务分配,使用系统状态信息进行负载调整。目前已提出了很多动态算法,如Pick-K算法,Basic LI和Aggressive LI算法[8],Pick-KX算法[9]等。

3.2.1 典型动态负载分配算法所遵循的策略

1)启动策略

发送者启动:该算法由发送者触发负载分配。当系统中的某个处理机结点的负载W(i)>W1*,即为重载结点,称该结点为发送者。它主动寻找一个负载轻的处理机结点来接收自己的一部分负载。显然当整个系统的平均负载为轻载时,发送者能够容易找到负载的接收者,因此系统比较稳定。但当其为重载时,该系统中的大部分处理机结点的负载都处于重载,所以很难找到负载轻的处理机结点,反而使发送者结点的负载更加恶化,严重影响系统性能。

接收者启动:该算法是由接收者触发负载分配。当系统中的某个处理机结点的负载W(i)

对称启动:对称启动算法是结合了接收者启动算法和发送者启动算法两者的优点。当整个系统平均负载处于轻载时,用发送者启动算法,负载重的处理机结点很容易找到可以接收其负载的处理机结点;当处于重载时,使用接收者启动算法较合适,此时负载较轻的处理机结点很容易找到负载重的处理机结点,以便接收一部分负载,这样该算法就避免了接收者和发送者启动算法的缺点。

自适应算法:自适应算法中,每台处理机结点利用查询过程中搜集的信息,将所有的处理机结点分为发送、接收和中立者(重载、轻载和适载),并用3张表(发送、接收和中立者表)[11]分别记录这些结点的处理机名。当处理机结点为发送者时,启动发送者算法,当处理机结点为接收者时,启动接收者算法。自适应算法的优点是:查询时查询结点和被查询结点均能更新自己的3张表,真实地记录系统中所有处理机结点的状态信息。每个结点可以根据自身的3张表选择合适的处理机结点发送或接收负载。显然,当系统重载时,由于处理机结点的接收者表多为空,从而抑制发送者启动算法部分,由接收者启动算法进行负载分配;系统轻载时,由于处理机结点发送者表多数为空,从而抑制接收者启动算法部分,由发送者启动算法进行负载分配。其缺点是:系统中的每台处理机结点均保存3张表,浪费存储空间。在该算法中主要的开销在于一个处理机结点对另一个处理机结点的查询。由于在表中选择处理机是随机的,而且这3个表保存的是整个系统的处理机结点的信息,所以在表中不但不能很快选择到合适的处理机结点,使系统资源不能被充分利用,而且还会干扰其它正在运行中的处理机结点,随着其结点的增多,系统的额外开销将会越来越多[10]。

2)转移策略

6 Journal of Software软件学报2004,15(1)

每台服务器有两个控制阀值:过载标志(HWM)和轻载标志(LWM)。当服务器的负载大于HWM 时,需要将部分负载转移出去;当服务器的负载小于LWM 时,需要接收部分新的负载。负载转移不是原子动作,出现冲突时,可以选择强制执行或重新选择宿主服务器。

3)选择策略

启动服务器选择最合适转移,最能起平衡作用的任务发送给合适的目标服务器。常用的策略有抢占式任务迁移和非抢占式的负载共享两种。

4)收益性策略

使用不平衡因子来评估系统平衡负载是否有收益。该策略的原则是转移所产生的开销应小于所产生的响应时间收益。负载代价来自三个方面:服务器之间传播的负载信息;任务转移前的选择决策过程;任务移植的通信延迟。

5)位置策略

位置策略用来寻找合适的服务器共享负载。常用的算法有Shortest Queue、Round-Robin、Random、K-Subset 和最近邻居等。

6)信息策略

决定收集系统中其他服务器状态信息的时机、收集的方位和收集的信息。信息策略设计越合理,每台服务器收集的信息就越准确,信息量就越大,负载均衡效果就越好。

3.2.2 动态负载平衡调度

1)集中式调度

在集中式调度中,所有任务的调度都是由一个调度服务器,即“负载均衡器”来完成的。“负载均衡器”负责搜集系统负载信息,并决定负载平衡调度方案。集中式调度实现比较简单,很容易获得各服务器的负载信息,可以根据NodeLoadList列表进行负载快速转移,具有控制集中,调度有力等优点。但在结点数较多的大规模并行分布系统中,由于各结点与调度服务器的通讯成为瓶颈,所以调度开销比较大[12,13,14];另一方面,在客户终端任务到达很密集的情况下,任务在“负载均衡器”上的排队等待时间就会大大增加任务处理总时间。所以,除非结点数目较少,或者在底层硬件系统中采取比如超级集线器这样的一些特殊实现措施[15],否则在分布存储的并行系统中不大采用集中式平衡调度方法[16]。

2)分布式调度

在分布式调度中,没有负载均衡器,任务被分配给所有服务节点,通过服务器间的交互,每台服务器都有其他服务器的负载信息,即都有NodeLoadList 列表,由本服务器完成任务的调度,当负载饱和时可以将一部分任务转移到其他轻载服务器。分布式调度的最大优点在于具有良好的可扩放性,具有很强的容错能力,不会出现集中式负载均衡那样瓶颈问题。目前常用的分布式负载平衡调度方法主要有基于随机选择任务移动结点的概率调度算法[17]、根据负载变化差额而基于梯度(Gradient)模型的调度算法[18]以及自适应的近邻契约算法[19]等。但是在分布式调度算法中,每台服务器都需定时向其他服务器广播其负载信息,发送负载信息总数为:N=n(n-1),其中n 为服务器总数目,N 为系统负载更新信息数。因此,服务器之间的交互信息量N 随着服务器数目的增加而成倍增加,将会占用大量的网络资源,从而导致系统性能下降。其次,由于所有服务器都具有相同的负载信息表,所有重服务器都会把负载转移到同一台轻服务器,从而导致轻服务器负载急剧增大,很快变为重服务器,如此反复,导致任务不能及时处理。

3)混合/层次调度

为了最小化负载均衡开销,一些负载均衡方法重在研究如何根据层次拓扑结构来构建一个层次树的问题。HBM[20]利用层次树进行多级负载均衡,根据层次化的网络结构将处理器划分为多个组(均衡域),由这些均衡域组织成一个层次结构。在层次结构中的每一层,相邻的域间进行负载均衡,并且从底层至上层,在每层执行相同的域间负载均衡过程,最后在根节点完成全局的负载均衡。混合策略(HybridLB)[21]类似于传统的层次负载均衡策略,将处理器划分为多个独立的、自治的组,并将这些组按层次结构进行组织。每层中的每个子树的根节点与其所有子节点形成一个负载均衡组,根节点充当该均衡组的头节点,控制负载均衡组内的负载均

作者名等:题目7

衡过程,充当类似集中式策略中央节点的功能。第i层的根处理器参与由第i+1层(层的序号由底至上递增)的头节点控制的负载均衡过程,但第i层各节点的子节点不参与第i+1层的负载均衡过程。与HBM不同的是,HybridLB可在不同的层采用不同的策略,并最小化任务传输的距离和数量以优化负载均衡的通讯开销[22]。

论文[22]中列举以上三种调度常用算法和算法性能比较,此处不再详述。

4 总结

本文通过负载均衡技术分类方式、负载均衡技术和负载均衡算法三个方面对负载均衡做了介绍。其中,DLB(动态负载均衡)是现在应用最广泛的一种方式,随着新兴的多/众核相关技术和应用的出现及进一步发展,DLB技术的重要性日益凸显。但是现有的动态负载平衡算法不尽完善,比如有些DLB算法每次运行只选择一个符合条件( 负载最轻[23]、距离最近[24]、其他约束条件[25]) 的轻载节点作为负载迁移的目标节点,负载迁移后, 若重载节点仍过载,则再次运行算法,直至负载平衡,增加了负载平衡的时空开销和系统对任务的平均响应时间。针对此问题,论文[26]中将多个轻载节点作为负载迁移目标节点的多目标迁移机制,对DLB的性能做了改善。未来对于DLB研究主要集中在以下几个层面:在系统层次上,通过考虑拓扑结构来优化通讯可提高DLB 策略的性能[27, 28, 29, 30];在节点组层面上进行通讯开销优化:考虑到节点内的通讯速度远快于节点间通讯的事实[31],研究如何将更多的节点间通讯密集的任务划分到同一节点内可进一步优化通讯性能;在节点层面上研究细粒度划分与数据依赖性对性能的影响,设计适应于统一多核计算模型和异构体系结构的负载均衡策略来提高策略的计算性能、可扩展性和可移植性,为提高并行性引入的同步开销代价大于收益以及计算具有较大粒度并行性和依赖度的问题时,需要多少处理器节点才是恰当的等问题。

致谢在此,感谢给予本文支持的所有著作的作者,尤其要感谢南京大学软件学院葛季栋副教授对本论文的指导。

References:

[1]Liu XH. Research on Load Balancing Technology. Science & Technology Information, 2007, No12:173~174(in Chinese with

English abstract).

[2]Sun JC, Zhang LB, Chi XB, eds. Network parallel computing and distributed programming environment. Beijing: Science press,

2003.30~36.

[3]Xue J, Li ZZ, Wang YL. The development of load balancing [J]. Mini micro computer system, 2003, 24(12):2100~2103.

[4]Xiao JB, Wang Y. Application of DNS to achieve load balancing Web cluster service [J]. Computing Systems, 2003(10):59~62.

[5]Hu ZA, Wang L. The relationship between Algorithm, network topology with scheduling frequency and dynamic load balancing

[J].Computer engineering and science,2000,22(1):104~107.

[6]Yin F. Distributed system dynamic load distribution algorithm research [J].Microcomputer information, 2009 (18): 91~93.

[7]Wang S, Xiu BX, Xiao WD. The Web server cluster load balancing algorithms [J]. Computer engineering, 2004, 40(25):78~80.

[8]Dahlin M.Interpreting Stale Load Information[C].In: Proc of the 19th Intl Conf on Distributed Computing Systems, 1999-05.

[9]Mitzenmacher M.How Useful is Old Information[C].In: Proc of the 15th Annual ACM.

[10]Mao M, Pan J. Dynamic Load Balancing Self-adapting Algorithm in Multi-Processor Systems and Its Improvements [J]. Power of

intelligence, 2002(2): 55~58.

[11]Zhu SP. A new way of dynamic load balancing algorithm design [J]. Computer engineering, 1995,16(3):26~28.

[12]Hesham El-Rewini, Theodore G Lewis, Hesham H Ali. Task scheduling. Englewood Cliffs, New Jersey: PTR Prentice Hall, 1994.

[13]Joosen W, Pollet J.The efficient management of task clusters in a dynamic load balancer. In: Proceedings of the International

Conference'94 on Parallel Distributed Systems. Hsinchu, Taiwan, Dec. 1994. 19~21.

[14]Feng MD, Yuen CK. Dynamic load balancing on a distributed system. In: Proceeding s of the 6th Symposium on Parallel and

Distributed Processing. Dallas, Texas, Oct. 1994. 26~29.

[15]Gene Eu Jan, Ming-Bo Lin. Effective load balancing on highly parallel multicomputers based on super concentrators. In:

Proceedings of the International Conference'94 on Parallel Distributed Systems. Hsinchu, Taiwan, Dec. 1994. 19~21.

8 Journal of Software软件学报2004,15(1)

[16]Chen HP, Ji YC, Chen GL.A general model of distributed dynamic load balancing scheduling [J]. Journal of software, 1998, 9(1):

25~29.

[17]Soumen Chakrabartietal. Randomized load balancing for tree-structured computation. In: Proceedings of the International

Conference '94 on Parallel Distributed Systems. Hsinchu, Taiwan, Dec. 1994. 19~21.

[18]Lin F C H, Keller R M. The gradient model load balancing method. IEEE Transactions on Software Engineering, 1987, SE-13:

32~38.

[19]Shu W, Kale L V. A dynamic scheduling strategy for the Chare-Kernei system. In: Proceedings of Supercomputing’89.Reno,

Nevada, Nov. 1989. 389~398.

[20]M H Willebeek-LeMair, eds. Strategies for dynamic load balancing on highly parallel computers [J]. IEEE T Parall Distrib, 1993,

4(9):979- 993.

[21]G B Zheng. Achieving High Performance on Extremely Large Parallel Machines: Performance Prediction and Load Balancing[D].

Urbana: UIUC, 2005.

[22]Yang JX, Tan GZ, Wang RS. Review of Parallel and distributed system dynamic load balancing strategy were [J]. Journal of

electronic, 2010, 38(5): 1122~1130.

[23]BAHIJM, CONTASSOTIVIER S, COUTURIER R. Coupling dynamic load balancing with a synchronism in iterative algorithms on

the computational grid[C].Proceedings of the 17th International Parallel and Distributed Processing Symposium. Nice, France, 2003.

[24]YANMAZE, TONGUZOK. Location dependent dynamic load balancing[C].IEEE Global Telecommunications Conference. St Louis,

USA, 2005.

[25]Wang YB, HYATTR. An improved algorithm of two choices in randomized dynamic load balancing [C].Proceedings of the Fifth

International Conference on Algorithms and Architectures for Parallel Processing . Beijing, China, 2002.

[26]Liu B, Shi F, Gao YJ, eds. Dynamic load balancing algorithm based on a multi-destination migration mechanism [J]. Journal of

Harbin engineering university, 2008, 29(8): 842~845.

[27]EAGER D, LAZOWSKA E, ZAH ORJAN J. Dynamic load sharing in homogeneous distributed systems [J].IEEE Transactions on

Software Engineering,1986, 12(5) : 662~675.

[28]T Agarwal. Strategies for Topology aware Task Mapping and for Rebalancing with Bounded Migrations [D].Urbana:UIUC,2005.

[29]P K K Loh, eds. How network topology affects dynamic load balancing[J].IEEE Par Dist Tech, 1996, 4(3):25~35.

[30]V E Taylor, eds. Balancing load versus decreasing communication: parameterizing the tradeoff [J].J Par Distr Comp, 2001, 61(5):

567~580.

[31] A Bhatelé, eds. Dynamic topology aware load balancing algorithms for molecular dynamics applications [A].In Proc.23rd ACM

ICS[C]. New York: ACM Press, 2009.110~116.

附中文参考文献:

[1] 刘学辉.关于负载均衡技术的研究.科技资讯,2007,No.12:173-174.

[2] 孙家昶,张林波,迟学彬等.网络并行计算与分布式编程环境.北京:科学出版社,2003.30-36.

[3] 薛军,李增智,王云岚.负载均衡技术的发展[J].小型微型计算机系统, 2003, 24(12):2100- 2103.

[4] 肖军弼,王宇.应用DNS实现Web集群服务的负载均衡[J].计算机系统应用, 2003(10):59- 62.

[5] 胡子昂,王立.算法、网络拓扑及调度频率与动态负载平衡的关系[J].计算机工程与科学,2000,22(1):104-107.

[6] 尹锋.分布式系统动态负载分配算法研究[J].微计算机信息,2009 (18): 91-93.

[7] 王霜,修保新,肖卫东.Web服务器集群的负载均衡算法研究[J].计算机工程与应用,2004,40(25):78-80.

[10] 毛茅,潘娟.多处理机系统中动态负载平衡自适应算法及其改进[J].电力情报, 2002(2): 55-58.

[11] 朱世平.动态负载平衡算法设计的新途径[J].计算机工程与设计,1995,16(3):26-28.

[16] 陈华平,计永昶,陈国良.分布式动态负载平衡调度的一个通用模型[J].软件学报, 1998, 9(1): 25-29.

[22] 杨际祥,谭国真,王荣生.并行与分布式计算动态负载均衡策略综述[J].电子学报, 2010, 38(5): 1122-1130.

[26] 刘滨,石峰,高玉金,等.多目标迁移机制的动态负载平衡算法[J].哈尔滨工程大学学报, 2008, 29(8): 842-845.

F5负载均衡器双机切换机制及配置

F5负载均衡器双机切换触发机制及配置 1 F5双机的切换触发机制 1.1 F5双机的通信机制 F5负载均衡器的主备机之间的心跳信息可以通过以下两种方式进行交互: ●通过F5 failover 串口线交换心跳信息(电压信号不断地由一方送到另外一方) 处于Standby的系统不断监控Failover上的电平,一旦发现电平降低,Standby Unit会立即变成Active,会发生切换(Failover)。通过串口监控电平信号引起的切换可以在 一秒中以内完成(大概200~300ms)。四层交换机在系统启动的时候也会监控Failover 线缆的电平以决定系统是处于Active状态还是Standby状态。在串口Failover线缆上不传输任何数据信息。 ●Failover线缆也可以不采用串口线,而直接采用网络线。(但F5不建议这样做, 因为网络层故障就可能会两台负载均衡器都处于Active状态)。如果采用网络层监控实现Failover, Bigip将通过1027与1028端口交换心跳信息。 经验证明:两台F5之间一定要用failover cable连接起来,不连接failover cable而直接采用网络线连接在一起不可靠,而且造成了网上事故。 F5双机之间的数据信息是通过网络来完成的。因此运行于HA方式的两台F5设备在网络层必须是相通的。(可以用网线将两台F5设备直接相连起来,也可以通过其它的二层设备将两台F5设备相连,使F5设备在网络上可以连通对端的Failover IP地址)。 两台运行于HA方式的四层交换机之间通过网络层交互的信息主要包括: ●用于配置同步的信息:通过手工执行config sync会引起Active到Standby系 统的配置信息传输。 ●用于在发生Failover时连接维持的信息:如果设置了Connection Mirroring, 处于Active的四层交换机会将连接表每十秒中发送一次到Standby的系统。(The following TCP Connections can be mirrored:TCP、UDP、SNAT、FTP、Telnet )。 如果设置了Stateful Failover,Persistence信息也会被发送到Standby系统。(The following persistence information for the virtual servers (VIPs) can be mirrored:SSL persistence、Sticky persistence、iRules Persistence )

负载均衡技术

负载均衡技术 现在网络中常见的的负载均衡主要分为两种:一种是通过硬件来进行,常见的硬件有比较昂贵的NetScaler、F5、Radware和Array等商用的负载均衡器,也有类似于LVS、Nginx、HAproxy的基于Linux的开 源的负载均衡策略, 商用负载均衡里面NetScaler从效果上比F5的效率上更高。对于负载均衡 器来说,不过商用负载均衡由于可以建立在四~七层协议之上,因此适用面更 广所以有其不可替代性,他的优点就是有专业的维护团队来对这些服务进行维护、缺点就是花销太大,所以对于规模较小的网络服务来说暂时还没有需要使用。 另一种负载均衡的方式是通过软件:比较常见的有LVS、Nginx、HAproxy 等,其中LVS是建立在四层协议上面的,而另外Nginx和HAproxy是建立在七 层协议之上的,下面分别介绍关于 LVS:使用集群技术和Linux操作系统实现一个高性能、高可用的服务器,它具有很好的可伸缩性(Scalability)、可靠性(Reliability)和可管理性(Manageability)。 LVS的特点是: 1、抗负载能力强、是工作在网络4层之上仅作分发之用,没有流量的产生; 2、配置性比较低,这是一个缺点也是一个优点,因为没有可太多配置的东西,所以并不需要太多接触,大大减少了人为出错的几率; 3、工作稳定,自身有完整的双机热备方案;

4、无流量,保证了均衡器IO的性能不会收到大流量的影响; 5、应用范围比较广,可以对所有应用做负载均衡; 6、LVS需要向IDC多申请一个IP来做Visual IP,因此需要一定的网络知识,所以对操作人的要求比较高。 Nginx的特点是: 1、工作在网络的7层之上,可以针对http应用做一些分流的策略,比如针对域名、目录结构; 2、Nginx对网络的依赖比较小; 3、Nginx安装和配置比较简单,测试起来比较方便; 4、也可以承担高的负载压力且稳定,一般能支撑超过1万次的并发; 5、Nginx可以通过端口检测到服务器内部的故障,比如根据服务器处理网页返回的状态码、超时等等,并且会把返回错误的请求重新提交到另一个节点,不过其中缺点就是不支持url来检测; 6、Nginx对请求的异步处理可以帮助节点服务器减轻负载; 7、Nginx能支持http和Email,这样就在适用范围上面小很多; 8、不支持Session的保持、对Big request header的支持不是很好,另外默认的只有Round-robin和IP-hash两种负载均衡算法。 HAProxy的特点是:

负载均衡技术综述

?2004 Journal of Software 软件学报 负载均衡技术综述* 殷玮玮1+ 1(南京大学软件学院,江苏南京210093) Overview of Load Balancing Technology YIN Wei-Wei1+ 1(Department of Software Institute, Nanjing University, Nanjing 210093, China) + Corresponding author: Phn +86-**-****-****, Fax +86-**-****-****, E-mail: bingyu0046@https://www.doczj.com/doc/154989149.html,, https://www.doczj.com/doc/154989149.html, Received 2000-00-00; Accepted 2000-00-00 Yin WW. Overview of Load Balancing Technology. Journal of Software, 2004,15(1):0000~0000. https://www.doczj.com/doc/154989149.html,/1000-9825/15/0000.htm Abstract: Load balance technology based on existing network structure, provides a cheap and efficient method for expanding bandwidth of the server and increase the server throughput, strengthens network data processing ability, increases network flexibility and availability. This paper introduces in detail the three aspects: the classification of load balancing, load balancing and load balancing algorithm, then compares the load balancing algorithm commonly used and their advantages and disadvantages, and describes the dynamic load balancing strat egy and three kinds of scheduling methods. Key words: load balancing technology; the load conditions; the static load balancing algorithm; the dynamic load balancing algorithm 摘要: 负载均衡技术基于现有网络结构,提供了一种扩展服务器带宽和增加服务器吞吐量的廉价有效的方法,加强了网络数据处理能力,提高了网络的灵活性和可用性。本文从负载均衡技术的分类、负载均衡技术和负载均衡算法三个方面对负载均衡做了详细介绍,对常用负载均衡算法做了优缺点比较,并对动态负载均衡算法遵循的策略和三种调度方式做了阐述。 关键词: 负载均衡技术; 负载状况;静态负载均衡算法;动态负载均衡算法 中图法分类号: ****文献标识码: A 随着大规模并行分布处理系统,特别是网络工作站机群系统的广泛应用,如何采取有效的调度策略来平衡各结点(机)的负载,从而提高整个系统资源的利用率,已成为人们的研究热点。负载均衡技术基于现有网络结构,提供了一种扩展服务器带宽和增加服务器吞吐量的廉价有效的方法,加强了网络数据处理能力,提高了网络的灵活性和可用性。负载均衡的应用,能够有效地解决网络拥塞问题,能够就近提供服务,实现地理位置无关性(异地负载均衡)。同时,这项技术还能提高服务器的响应速度,提高服务器及其它资源的利用 *Supported by the **** Foundation of China under Grant No.****, **** (基金中文完整名称); the **** Foundation of China under Grant No.****, **** (基金中文完整名称) 作者简介: 殷玮玮(1992-),女,河南舞阳人,硕士,主要研究领域为分布式计算,负载均衡.

负载均衡在Web服务器中的应用

负载均衡在Web服务器中的应用 随着互联网的迅速发展,互联网为社会网络迅猛发展提供了“天时”,宽带服务的普及,视频服务、FTP下载、数据库查询应用服务器工作量的日益增加,负载均衡技术的应用更加广泛。阐述了负载均衡技术的分类和重点介绍了服务器集群负载均衡技术及应用。 标签:互联网;负载均衡;服务器集群 引言 随着互联网技术的发展,宽带服务的普及,视频服务、FTP 下载、数据库查询等大数据量的Web 应用逐渐由可能演变成一种趋势,这些应用对Web 服务器的性能有较高要求。伴随着信息系统的各个核心业务量的增加和数据流量的快速增长,从而造成服务质量下降。在花费相同条件下,必须采用多台服务器协同工作,防止计算机的单点故障、性能不足等问题,以满足不断增加业务量的需求,提高计算机系统的处理能力和更有效解决负载均衡问题。 1 负载均衡概述 负载均衡是在现有网络结构上进行部署,来扩展网络设备和服务器的带宽、增加吞吐量,提高网络数据处理能力。从而根据负载压力通过某种算法合理分配资源,保证计算机高可靠性和高性能计算。 负载均衡其特点是充分利用网络中计算机的资源,实现多台节点设备上做并行处理。当网络中的一台或者几台服务器出现故障时,自动切换到其他服务器上,客户端会自动重试发生故障的连接,仅几秒的延迟就能选择性能最佳的服务器响应客户请求。保证用户访问的质量可靠性;同时根据算法将负载合理分配到多台节点设备上进行处理,减少用户等待响应时间和提高系统处理能力。 2 常用的四种负载均衡技术 2.1 软/硬件负载均衡 软件负载均衡是在一台或多台服务器操作系统上安装一个或多个软件来实现负载均衡,比如DNS负载均衡等。软件负载均衡的优点是容易进行相关配置、成本比较低,就能满足要求不高的负载均衡需求。 硬件负载均衡是在服务器和外部网络之间加装负载均衡器,通过负载均衡器完成专门的任务,它独立于服务器的操作系统,大大提高了服务器的整体性能。由于负载均衡器具有多样化的策略管理方法,同时能进行智能化的流量管控,使得负载均衡达到最佳状态。所以,硬件负载均衡的性能比软件负载均衡性能更胜一筹,但是投资成本相对比较高。

SureHA 技术白皮书

SureHA100G2 技术白皮书 摘要 本白皮书论述Lenovo SureHA 100G2高可 用软件的功能以及实现原理。 Lenovo 确信本出版物在发布之日内容准确无 误。如有更新,恕不另行通知。 Lenovo 对本出版物的内容不提供任何形式的 陈述或担保,明确拒绝对有特定目的适销性或 适用性进行默示担保。使用、复制或分发本出 版物所描述的任何SureHA 100G2软件都要 有相应的软件许可证。

第 1 章 SureHA100G2集群系统概览 2 目录 SureHA100G2 技术白皮书 .................................................................................................. 1 第 1 章 何谓集群系统 ..................................................................................................... 4 集群系统的概要 ................................................................................................................................... 4 HA (High Availability)集群 ................................................................................................................ 4 共享磁盘型 ....................................................................................................................................................... 5 镜像磁盘型 ....................................................................................................................................................... 7 系统构成 .............................................................................................................................................. 7 故障保护原理 ..................................................................................................................................... 10 共享磁盘的互斥控制 ....................................................................................................................................... 11 网络分区症状 (Split-brain-syndrome) ......................................................................................................... 11 集群资源的交接 ................................................................................................................................. 11 数据的交接 ..................................................................................................................................................... 11 IP 地址的交接 .................................................................................................................................................. 12 应用程序的交接 .............................................................................................................................................. 12 失效切换总结 .................................................................................................................................................. 14 Single Point of Failure 的排除 ......................................................................................................... 14 共享磁盘 ......................................................................................................................................................... 15 共享磁盘的访问路径 ....................................................................................................................................... 16 LAN ................................................................................................................................................................ 16 支持可用性的操作 ............................................................................................................................. 17 操作前测试 ..................................................................................................................................................... 17 故障的监视 ..................................................................................................................................................... 17 第 2 章 关于SureHA100G2......................................................................................... 19 SureHA100G2的产品结构 ................................................................................................................ 19 SureHA100G2的软件配置 ................................................................................................................ 19 SureHA100G2 的故障监视原理 ....................................................................................................... 20 何谓服务器监视 .............................................................................................................................................. 20 何谓业务监视 .................................................................................................................................................. 20 何谓内部监视 .................................................................................................................................................. 21 可监视的故障和无法监视的故障 ........................................................................................................ 21 通过服务器监视可以查出的故障和无法查出的故障 ........................................................................................ 21 通过业务监视可以查出的故障和无法查出的故障 ............................................................................................ 21 网络分区解析 ..................................................................................................................................... 22 失效切换的原理 ................................................................................................................................. 22 由SureHA100G2构建的共享磁盘型集群的硬件配置 ...................................................................................... 23 用SureHA100G2构建的镜像磁盘型集群的硬件配置 .. (24)

服务器负载均衡技术

HUAWEI USG6000V系列NFV防火墙技术白皮书之---服务器负载均衡技术白皮书 华为技术有限公司 Huawei Technologies Co., Ltd.

目录 1背景和概述 (2) 2全局服务器负载均衡(GSLB) (3) 3本地服务器负载均衡(LSLB) (4) 3.1使用目的MAC地址转换的服务器负载均衡(DR) (4) 3.2使用网络地址转换实现的服务器负载均衡(L4 SLB) (5) 3.3使用轻量代理和网络地址转换的服务器负载均衡(L4 lwProxy SLB) (7) 3.4使用全量Socket 代理的服务器负载均衡(L7 Socket Proxy SLB) (9) 3.4.1socket代理加业务会话关联保持 (9) 3.4.2根据URL类型不同的分担,静态资源访问和动态计算访问分开多种服务 器10 3.4.3SSL卸载 (10) 3.4.4链路优化:压缩、协议优化、本地cache、多路复用 (11) 3.5业务保持技术 (13) 4华为USG防火墙支持的SLB功能列表 (14)

1 背景和概述 随着互联网的快速发展,用户访问量的快速增长,使得单一的服务器性能已经无法满足大量用户的访问,企业开始通过部署多台服务器来解决性能的问题,由此就产生了服务器负载均衡的相关技术方案。 在实际的服务器负载均衡应用中,由于需要均衡的业务种类以及实际服务器部署场景的不同(比如是否跨地域、跨ISP数据中心等),存在多种负载均衡的技术。如下典型的组网方式如图所示: 服务提供方为了支撑大批量的用户访问,以及跨不同地域、不同接入ISP的用户都能够获得高质量的业务访问体验,其已经在不同地域、不同ISP数据中心搭建了服务器,这样就带来一个需求,也就是客户的访问能够就近、优先选择同一个ISP数据中心的服务器,从而获得高质量的业务访问体验。 同时,基于单台服务器能够提供的业务访问并发是有限的,那么就自然想到使用多台服务器来形成一个“集群”,对外展现出一个业务访问服务器,以满足大量用户访问、而且可以根据业务访问量的上升可以动态的进行业务能力扩容的需要。

基于Nginx的Session-sticky技术的软件负载均衡方案原理和实施步骤v1.0-20130929

基于Nginx的Session-sticky技术的软件负载均衡方案原理和实施步骤 [一]、综述 (1)实现原理:用户请求到nginx,基于nginx的nginx-sticky-module模块的session sticky(会话粘滞)实现后端应用服务器的路由选择,再将用户请求提交到后端的tomcat/weblogic/websphere 应用处理并逆向反馈响应。 (2)技术选型: Nginx+ nginx-sticky-module+J2EE中间件(容器)。 (3)应用场景: 本解决方案是基于浏览器的Cookie机制,通过nginx的反向代理机制,将浏览器与后端应用服务器的访问映射关系,作为前端请求转发到实现某个会话内所有用户的请求都访问当相同的后端服务器。 [二]、安装步骤 创建www用户和组,以及主机需要的目录,日志目录 groupadd www useradd -g www www 一、依赖的程序 1. gzip module requires zlib library 2. rewrite module requires pcre library 3. ssl support requires openssl library 二、依赖的程序的安装的方法 1、zlib 现在最新的版本是zlib-1.2.5 官网下载地址:https://www.doczj.com/doc/154989149.html,/zlib-1.2.5.tar.gz $tar -xvzf zlib-1.2.5.tar.gz 2、 pcre现在的最新版本是pcre-8.02.tar.gz 官网下载地址:ftp://https://www.doczj.com/doc/154989149.html,/pub/software/programming/pcre/pcre- 8.02.tar.gz $tar -xvzf pcre-8.02.tar.gz $cd pcre-8.02 $./configure --prefix=/usr/local/pcre --enable-utf8 --enable-unicode-properties $ make && make install 3、openssl现在最新版本是openssl-1.0.0a.tar.gz 官网下载地址:https://www.doczj.com/doc/154989149.html,/source/openssl-1.0.0a.tar.gz $tar zvxf openssl-1.0.0.tar.gz $cd openssl-1.0.0 $./config --prefix=/usr/local/ssl-1.0.0 shared zlib-dynamic enable-camellia $make && make install 4、安装Nginx 1.0.0,这种方法./configure 要带很多参数,大家要注意。 官网下载地址:https://www.doczj.com/doc/154989149.html,/ $tar zvxf Nginx 1.0.0.tar.gz $cd Nginx 1.0.0 $./configure --prefix=/usr/local/nginx --with-http_gzip_static_module

几种负载均衡算法

几种负载均衡算法 本地流量管理技术主要有以下几种负载均衡算法: 静态负载均衡算法包括:轮询,比率,优先权 动态负载均衡算法包括: 最少连接数,最快响应速度,观察方法,预测法,动态性能分配,动态服务器补充,服务质量,服务类型,规则模式。 静态负载均衡算法 ◆轮询(Round Robin):顺序循环将请求一次顺序循环地连接每个服务器。当其中某个服务器发生第二到第7 层的故障,BIG-IP 就把其从顺序循环队列中拿出,不参加下一次的轮询,直到其恢复正常。 ◆比率(Ratio):给每个服务器分配一个加权值为比例,根椐这个比例,把用户的请求分配到每个服务器。当其中某个服务器发生第二到第7 层的故障,BIG-IP 就把其从服务器队列中拿出,不参加下一次的用户请求的分配, 直到其恢复正常。 ◆优先权(Priority):给所有服务器分组,给每个组定义优先权,BIG-IP 用户的请求,分配给优先级最高的服务器组(在同一组内,采用轮询或比率算法,分配用户的请求);当最高优先级中所有服务器出现故障,BIG-IP 才将请求送给次优先级的服务器组。这种方式,实际为用户提供一种热备份的方式。 动态负载均衡算法 ◆最少的连接方式(Least Connection):传递新的连接给那些进行最少连接处理的服务器。当其中某个服务器发生第二到第7 层的故障,BIG-IP 就把其从服务器队列中拿出,不参加下一次的用户请求的分配, 直到其恢复正常。 ◆最快模式(Fastest):传递连接给那些响应最快的服务器。当其中某个服务器发生第二到第7 层的故障,BIG-IP 就把其从服务器队列中拿出,不参加下一次的用户请求的分配,直到其恢复正常。 ◆观察模式(Observed):连接数目和响应时间以这两项的最佳平衡为依据为新的请求选择服务器。当其中某个服务器发生第二到第7 层的故障,BIG-IP就把其从服务器队列中拿出,不参加下一次的用户请求的分配,直到其恢复正常。 ◆预测模式(Predictive):BIG-IP利用收集到的服务器当前的性能指标,进行预测分析,选择一台服务器在下一个时间片内,其性能将达到最佳的服务器相应用户的请求。(被BIG-IP 进行检测) ◆动态性能分配(Dynamic Ratio-APM):BIG-IP 收集到的应用程序和应用服务器的各项性能参数,动态调整流量分配。 ◆动态服务器补充(Dynamic Server Act.):当主服务器群中因故障导致数量减少时,动态地将备份服务器补充至主服务器群。 ◆服务质量(QoS):按不同的优先级对数据流进行分配。 ◆服务类型(ToS): 按不同的服务类型(在Type of Field中标识)负载均衡对数据流进行分配。 ◆规则模式:针对不同的数据流设置导向规则,用户可自行。 负载均衡对应本地的应用交换,大家可以通过对上述负载均衡算法的理解,结合实际的需求来采用合适你的负载均衡算法,我们常用到的一般是最少连接数、最快反应、或者轮询,决定选用那种算法,主要还是要结合实际的需求。

负载均衡技术的三种实现方法

目前,网络应用正全面向纵深发展,企业上网和政府上网初见成效。随着网络技术的发展,教育信息网络和远程教学网络等也得到普及,各地都相继建起了教育信息网络,带动了网络应用的发展。 一个面向社会的网站,尤其是金融、电信、教育和零售等方面的网站,每天上网的用户不计其数,并且可能都同时并发访问同一个服务器或同一个文件,这样就很容易产生信息传输阻塞现象;加上Internet线路的质量问题,也容易引起出 现数据堵塞的现象,使得人们不得不花很长时间去访问一个站点,还可能屡次看到某个站点“服务器太忙”,或频繁遭遇系统故障。因此,如何优化信息系统的性能,以提高整个信息系统的处理能力是人们普遍关心的问题。 一、负载均衡技术的引入 信息系统的各个核心部分随着业务量的提高、访问量和数据流量的快速增长,其处理能力和计算强度也相应增大,使得单一设备根本无法承担,必须采用多台服务器协同工作,提高计算机系统的处理能力和计算强度,以满足当前业务量的需求。而如何在完成同样功能的多个网络设备之间实现合理的业务量分配,使之不会出现一台设备过忙、而其他的设备却没有充分发挥处理能力的情况。要解决这一问题,可以采用负载均衡的方法。 负载均衡有两个方面的含义:首先,把大量的并发访问或数据流量分担到多台节点设备上分别处理,减少用户等待响应的时间;其次,单个重负载的运算分担到多台节点设备上做并行处理,每个节点设备处理结束后,将结果汇总,再返回给用户,使得信息系统处理能力可以得到大幅度提高。 对一个网络的负载均衡应用,可以从网络的不同层次入手,具体情况要看对网络瓶颈所在之处的具体情况进行分析。一般来说,企业信息系统的负载均衡大体上都从传输链路聚合、采用更高层网络交换技术和设置服务器集群策略三个角度实现。 二、链路聚合——低成本的解决方案 为了支持与日俱增的高带宽应用,越来越多的PC机使用更加快速的方法连入网络。而网络中的业务量分布是不平衡的,一般表现为网络核心的业务量高,而边缘比较低,关键部门的业务量高,而普通部门低。伴随计算机处理能力的大幅度提高,人们对工作组局域网的处理能力有了更高的要求。当企业内部对高带宽应用需求不断增大时(例如Web访问、文档传输及内部网连接),局域网核心部位的数据接口将产生瓶颈问题,因此延长了客户应用请求的响应时间。并且局域网具有分散特性,网络本身并没有针对服务器的保护措施,一个无意的动作,像不小心踢掉网线的插头,就会让服务器与网络断开。 通常,解决瓶颈问题采用的对策是提高服务器链路的容量,使其满足目前的需求。例如可以由快速以太网升级到千兆以太网。对于大型网络来说,采用网络系统升级技术是一种长远的、有前景的解决方案。然而对于许多企业,当需求还没有大到非得花费大量的金钱和时间进行升级时,使用升级的解决方案就显得有些浪费

负载均衡技术:带过流保护的并行电源模块

Load-sharing techniques:Paralleling power modules with overcurrent protection Paralleling low-current, low-voltage power modules for high-current, low-voltage applications has many benefits.Among them are: redundancy for enhanced reliability, hot-swap capability, distributed heat removal, and design flexi-bility. Paralleling power stages requires load sharing in order to equalize the stresses among the modules. One method of load sharing, based upon the automatic master/slave architecture, is to use a dedicated controller, such as the UCC39002, to provide for equal current distribution of the load current among the parallel-connected power sup-plies. The power modules must be equipped with true remote-sense capability or an output-adjustment terminal.The output current of each module is measured and com-pared to a common load-share bus. The positive sense voltage or the voltage of the output voltage adjust pin of each module is adjusted to provide equal current sharing.Several modules are paralleled so that the entire assem-bly can support a full load much greater than an individual module would be capable of supplying. Due to manufactur-ing tolerances and component variations, startup delay times typically vary slightly from module to module. When the modules to be paralleled have an overcurrent protection circuit featuring constant current limit with automatic recovery, starting up fully enabled into the full system load does not pose a problem. Inevitably, one module will have Texas Instruments Incorporated Power Management By Lisa Dinwoodie (Email: lisa_dinwoodie@https://www.doczj.com/doc/154989149.html,) Power Applications Specialist a faster turn-on than the others. The eager module will carry as much of the load as it can, sometimes up to 140%of its individual current capacity, before its output voltage falters. Meanwhile, the next module will come up and con-tribute to the load. After a brief transition time, all of the modules will be up, the master will be recognized, and accurate load sharing will take place. When the modules to be paralleled have an overcurrent protection circuit featuring a hiccup mode, starting up fully enabled into full system load, regardless of the load sharing technique used, does pose a problem. The module with the fastest turn-on profile will come up into an overcurrent condition. Immediately, in an act of self-preservation, it will go into hiccup mode, alternately sinking and sourcing current. The next module to come up into the load will also fall into this hiccup mode, sinking current when the other module sources it. Because the load-share circuitry essentially adds a voltage loop to the output of each mod-ule, this hiccupping overcurrent protection mode will prevent loop closure. Simultaneously enabling the modules will prevent this hiccup mode from starting, and load shar-ing can be successfully achieved. Figure 1 shows a simple comparator circuit that will simultaneously enable two modules and can be expanded to accommodate more if needed. It assumes that the only

(完整版)F5服务器负载均衡解决方案要点

F5服务器负载均衡解决方案 目录 一.大量数据处理所面临的问题 (2) 1.目前存在隐患 (3) 2.应用系统问题综述 (3) 1)“峰值”问题 (4) 2)多米诺”现象 (4) 3)“N+1”方式 (4) 4)“扩展”不便 (5) 5)“免疫力”差 (5) 6)“容灾”.................................................................................... 错误!未定义书签。 7)应用与网络脱节 (6) 二.F5解决方案 (6) 2.1 网络结构 (6) 2.2 方案优势 (7) 2.2.1避免“不平衡”现象 (7) 2.2.2解决因“峰值堵塞”带来的性能调整“不平衡” (9) 2.2.3避免“多米诺”现象 (9) 2.2.4更好的提供系统容错,提高系统可靠性 (10) 2.2.5“扩展”灵活 (11) 2.2.6“免疫力”强 (12) 2.2.7“容灾” (13) 2.2.8网络感知应用,应用控制网络 (14) 三.相关技术资料 (17) BIG-IP提供支持99.999%的正常运行 (17) 四.成功案例 (19) F5为中国某税务机关提供高可用性解决方案 (19)

一.大量数据处理所面临的问题 在现今的企业中,不论是否提供关键性任务的服务,都需要一个持续运行不断的高可用性网络计算环境以维持不间断的高品质服务。所谓高可用性的环境,也是信息管理人员所必须考虑的四件事: 1.使数据有一个安全的存储和运作方式,即使在设备故障时仍能保持数据的完整 一致。 2.使服务器系统持续运行,即使发生故障仍然让服务持续下去。 3.使整个计算环境能更好的管理,如何容错、容灾、集群共享。 4.如何使投资有最好的效益,使系统有最佳的扩充能力,有最低的整体拥有成本, 也就是在任何情况之下均能确保数据的完整一致,系统持续运行,使服务不间 断,同时有最好的投资回报率。 高可用性被定义为计算系统的连续运行。根据故障停机的业务影响,应用系统需要不同的可用性水平。要想实现一个应用系统的高可用性,所有组件(包括应用和数据库服务器、存储设备以及端到端网络)都需要提供连续的服务。 企业和机构对网络化应用及Internet 的日益依赖,加上语音和数据的集成,创造了对高可用性应用的增加需求。任何类型的系统故障停机都可能意味着收入、信誉和客户满意的巨大损失。 高度网络可用性的利用,企业实施高可用性网络来: ?防止财务损失 ?防止生产力损失 ?改进用户满意度 ?改进客户满意/信任 ?降低反应性IT支持成本,提高IT生产力 ?部署关键任务应用支持新业务实践的好处 ?典型的业务要求 为了实现高度的网络可用性,需要部署下列组件:

相关主题
文本预览
相关文档 最新文档