卓越性能和高性能区别电脑打开浏览器或播放器,性能应该满足300ms内打开,为什么都要1秒左右什么制约了速度

近年来Internet的发展步入黄金时期,網上信息交换的数量正在呈指数形式的增长特别是,由于电子商务的蓬勃发展人们已经预计在下一世纪,网上消费将成为日常生活的偅要形式

随着网络硬件设备的飞速进步,网络带宽的瓶颈效应日趋减弱WEB服务器的性能问题逐渐显现出来。单一的服务器系统处理客户請求的能力有限如何处理快速增长的客户请求,是当前研究人员关注的重要问题从目前的研究方向看,服务器方向的研究可以归结为兩个方面:

  1. 从实现机制上入手主要研究Caching技术、预取技术等。这方面的研究主要从客户访问行为分析入手研究可以缩小响应时间的方法,这些技术可以在现有服务器设备的基础上尽可能地提高系统的性能但性能提高的程度有限。
  2. 从体系结构入手将过去单一的服务器结構扩充为集群式服务器结构。这种改造可能需要增加较大的开销但可以显著提高服务器的总体性能。

就某一商业Web站点而言人们通常会認为,日访问人数越多说明销售的潜力越大,潜在的购买者越多但统计结果向我们显示的却是另一种结果。随着日访问人数的增加銷售量上升到一定程度后,反而下降图1给出的是某汽车销售网站网上销售的模拟计算结果。注意当网站日查询业务量为正常的120%或更高時,访问的服务时间明显增长使得日收益反而比正常情况下降很多。

图1:某汽车销售商网上销售模拟计算结果

0 0

究其原因我们不难发现,服务器的性能是导致这种现象的最根本的原因当服务器负载接近边界时,负载的一个小小的增长都有可能使服务器陷入象死锁那样的┅种境地由此可以得出,如何优化Web服务器性能将是今后一段时间研究的一个热点许多服务器制造商都在努力推出性能更加优良的服务器,但是单一服务器结构有一个致命的缺陷那就是由于服务器的处理能力有限,有可能会出现死锁的情况死锁的产生是由于新请求的箌达率大于系统服务率,系统没有能力在短期内处理所有的请求导致等待队列溢出,系统稳定状态转为不稳定状态最后崩溃。集群服務器具有良好的可扩展性可以随着负载的增大动态地向集群中增加服务器,从而就避免了由于处理能力不足而导致的系统崩溃

在集群系统中,粒度指的是负载调度和迁移的单位集群系统中的粗粒度指的是调度和迁移的单位是服务,而细粒度指的是进程目前,关于集群式服务器的研究主要集中在体系结构和负载平衡策略的研究上其中负载平衡策略的研究又是体系结构研究的基础。早期的集群式服务器系统常采用Round-Robin DNS算法实现客户请求的分发实际上是一种粗粒度的负载分配策略。

正常情况下域名服务器将主机名映射为一个IP地址,为了妀善负载平衡状况早期的集群服务器系统采用RR-DNS(Round-Robin DNS)调度算法将一个域名映射为一组IP地址,允许客户端链接到服务器集群中的某一台服务器仩由此提供了服务器站点的伸缩性。一些可伸缩Web服务器(例如Eddie和NCSA的Scalable Web Server)采用RR-DNS实现负载平衡一些高吞吐率的站点(Yahoo)也继续采用这种简单应用。图2為这类服务器结构的工作原理图

图 2 基于DNS机制的集群服务器结构

RR-DNS在解析域名时,附加一个生存期(TTL:Time-To-Live)这样一个请求生成后TTL时间内没有获嘚应答信息,可以向RR-DNS获取不同的IP地址

  1. 客户发出地址请求(URL) 地址请求报文到达DNS
  2. 客户向服务器1发出文档请求
  3. 服务器1响应客户的文档请求

在一個TTL时期内,多个域名请求将被映射到相同的IP地址这样大量的客户端请求可能出现在同一服务器上,导致明显的负载失衡如果TTL很小,又會明显增加域名解析的网络负载

另一个相关问题是由于客户端缓存域名-IP地址解析结果,客户端可以在未来的任意时刻发送请求导致垺务器的负载无法得到控制,出现服务器负载失衡

为解决请求的负载分布均衡问题,研究者对RR-DNS算法进行了多种改进这些改进依据TTL的設定形式可分为TTL恒定算法和自适应TTL算法。

TTL恒定算法 TTL恒定算法根据用户使用系统状态信息的情况又可分为系统无状态算法、基于服务器状态算法、基于客户状态算法和基于服务器/客户状态算法

  1. 系统无状态算法指DNS服务器按固定时间间隔将客户请求分发到不同服务器上。例如时刻  的客户接受服务器k1的服务时刻  的客户接受服务器k2的服务,式中的为TTL值客户获取服务器地址后,将地址缓存在客户端然后根据需要,向服务器发请求

    使用系统无状态算法,DNS只能控制部分请求的流向由于不考虑服务器的容量和可用性,以及客户请求到达的不确定性导致服务器超载或将请求发送到不可用服务器上,此算法性能很差没有实用价值。

  2. 获取服务器状态的目的是为了选择可用性更高的服務器处理客户请求防止服务器阻塞或服务失败。服务器状态算法需要使用简单的服务器侦听机制(例如心跳协议等)对服务器状态进行定时哏踪当客户请求到达时,将负载最轻的服务器地址映射给客户端SUN-SCALR在实现上就是采用这种机制。

  3. 来自客户端的信息可归结为客户访问的岼均负载状况和客户分布情况如果不考虑客户的优先级高低,CSB算法使用HLW(hidden load weight)参量描述新客户的到达率(TTL周期内访问服务器的新客户数量),根據新客户到达率进行服务器分配,这类算法的典型代表是MRRP(multitier round-robin policy)

    另外,Cisco的Distributed Director在实现上也采用CSB策略Distributed Director在服务器集群中充当主域名服务器,根据客戶-服务器的拓扑距离和新客户到达率选择最适合的服务器分发给客户。

  4. 在DNS算法中同时使用服务器状态和客户状态信息时,获得的性能往往是最高的例如Distributed Director的DNS算法以服务器可用信息和客户的距离信息为指标分配处理服务器。当节点服务器超载服务器发送异步警报反馈信息给DNS控制器,控制器将此服务器从可用服务器表中剔除根据客户状态信息选择最有利的服务器处理客户请求。使用此算法需要对服务器状态进行动态分析和预测

  5. 根据各台实际服务器的处理能力给它们分配不同的权重,使具有相同权重的服务器获得链接的概率相同高權重的服务器获得链接的概率比低权重服务器获得链接的概率大。

自适应TTL算法[20] 为平衡多服务器节点的负载特别是异构服务器的负载,人們提出了自适应的TTL算法这类算法使用基于服务器/客户状态DNS策略选择节点服务器,并动态调整TTL值在异构服务器集群中,根据各服务器容量不同设置的TTL值也不完全相同,由此控制因负载不对称造成的超载问题

自适应TTL算法使用两步表决机制:首先DNS选择服务器的方法和基于愙户状态算法相似;第二步,DNS根据负载分布情况、服务器处理能力和服务器的繁忙程度选择合适的TTL值服务器越忙,设定的TTL值越小

另外,自适应TTL算法的可扩展性很强算法实现中的数据都可以动态获得。使用自适应TTL算法可以使服务器集群比较容易地从局域网拓展到广域网

由于客户端和中间域名服务器缓存URL-IP地址映射,使用服务器状态信息的DNS算法不能保证负载平衡[15]每个地址缓存都有可能引发大量的客户請求阻塞集群中的某个服务器节点。因此合理地预测客户请求的到达率对于选择服务器更加有效。

使用客户到达率信息和服务器监听的調度算法可以获得更高可用性的服务器但是这种算法明显不适于异构型集群服务器。

为平衡分布系统的请求负载自适应TTL算法是最可靠、有效的。但是这种算法忽略了客户-服务器距离的重要性。

基于服务器/客户状态算法 可以获得更高可用性的服务器 不适于异构型集群垺务器
DNS算法中可靠性最好、效率最高的算法 忽略了客户-服务器距离的重要性

为实现客户请求的集中调度和完全路由控制采用细粒度负載分配策略的服务器结构中必须包含一个路由器节点──平衡器(可能是一个硬件路由器或集群服务器中配置专用软件的节点)接收发向Web站点嘚所有请求,根据某种负载平衡算法将请求转发到不同的服务器节点上

与基于DNS的体系结构不同的是,平衡器采用单一的、虚拟IP地址IP-SVA(single virtual IP adress)这個IP地址是众所周知的一个IP地址,而节点服务器的实际地址对用户是透明的由于此机制是在URL层进行请求的处理,Web页中包含的多个目标可鉯由集群中的不同节点提供,这样提供了比RR-DNS更细粒度的控制策略

根据路由机制的不同,细粒度负载分配策略又可分为报文重写(单向重寫或双向重写)、报文转发和HTTP重定向

2.1 PDR:报文双向重写策略

PDR采用集中调度方式完成客户请求的路由控制,服务器系统的平衡器负责客户请求嘚接收、分发和结果的返回工作与RR-DNS策略不同,平衡器在IP层进行地址重写使用动态地址映射表,实现客户请求的重定向采用单一的虛拟IP地址(IP-SVA),用户可见的只是平衡器节点服务器是透明的。在选择节点服务器时采用的调度策略主要有:Round Robin(轮转)、Weighted Round Robin(加权轮转)、Least Connection(最尐连接)和Weighted Least Connection(加权最少连接)平衡器将客户和节点服务器的映射添加到映射表中,这样就保证了同一客户的所有请求都发送到同一台节點服务器上从而保证了访问的持续性。采用PDR策略的典型代表是Cisco的Local Director从路由机制上看,Local Director当前采用最少连接数策略图1-3给出了Local Director处理客户请求嘚原理图。

  1. 平衡器选择客户请求的处理节点
  2. 将客户请求发送给处理节点
  3. 处理节点将结果返回给平衡器

性能分析 与粗粒度负载平衡策略不同PDR在IP级进行负载平衡分配,这样就省去了从应用层到IP层的通讯开销因此有效缩短了服务器处理时间。较DNS机制性能提高很大。但是这种筞略也存在如下问题:

  1. 平衡器容量有限导致系统可伸缩性不高。另外平衡器可能成为整个服务器集群的瓶颈。
  2. 此机制只适于在局域网范围内实现

2.2 PSR:报文单向重写策略

在某些体系结构中,平衡器对接收的客户请求进行二次路由将客户报文的目的IP地址改写为实际处理节點的IP地址,例如基本的TCP路由机制[15]

在TCP路由机制中,服务器集群由一组节点服务器和一个TCP路由器组成TCP路由器充当IP地址平衡器。当客户请求箌达TCP路由器时由于IP-SVA是唯一公开的IP地址,平衡器将请求报文中的目标IP地址重写为节点服务器的私有IP地址由于一个客户请求可能是由多个報文构成,TCP路由器在地址表中记录客户(具有相同的源IP地址)与执行服务器的地址映射保证来自同一客户的所有报文都能到达同一台节点服務器。服务器在发送应答报文给客户时将平衡器的IP-SVA写入源IP地址,这样客户并不知道请求是由隐藏的执行服务器完成图4给出了服务器使鼡报文单向重写策略时,客户请求的执行过程

  1. 平衡器进行地址解析,选择执行服务器
  2. 平衡器用执行服务器的私有地址(address1)替换客户请求报文嘚目的IP地址
  3. 客户请求报文二次路由到达执行服务器
  4. 执行服务器处理客户请求,并将IP-SVA写入应答报文的源IP地址中
图 4:报文单向重写示意图

性能分析 使用报文单向重写机制可以提高系统可用性程度当平衡器节点出现故障时,路由表可以由原平衡器迁移到新的服务器上服务器嘚结构也可以从局域网拓展到广域网。但是这种机制导致服务器结构透明性较差而且执行服务器和平衡器在判断客户请求是否结束上存茬困难。

由于报文重写增加了平衡器处理请求的复杂度导致平衡器负载加重,研究者提出了报文转发策略(PF)采用PF策略,平衡器和执行服務器共用一个IP-SVA地址客户请求报文到达平衡器后,平衡器根据调度选择执行服务器利用执行服务器的物理地址(MAC)将报文转发给执行节点。轉发过程中不需要进行地址解析所以不必改动客户请求报文。采用PF策略的典型代表是IBM的Network

局域网内部的Network Dispatcher集群处理客户请求的原理与图5相似其工作流程如下:

  1. 客户向服务器发出请求报文;
  2. 平衡器根据负载平衡策略选择执行服务器;
  3. 平衡器利用执行服务器的私有MAC地址转发客户報文;
  4. 执行服务器处理客户请求;
  5. 执行服务器将应答报文发送给客户。

为了将服务器集群从局域网拓展到广域网Network Dispatcher采用两级平衡器机制,圖5显示了广域网服务器集群的原理图一级平衡器到二级服务器之间采用类似报文单向重写策略,平衡器将客户请求报文的目的地址(IP-SVA)改写為二级平衡器的IP地址选择二级平衡器的原则是根据客户-服务器间的距离,将客户请求分发到最近的服务器子群上二级平衡器将客户请求报文的目的地址改回IP-SVA,然后将报文转发到执行服务器上服务器子群要求必须在同一局域网中。

图 5:广域网实现的报文转发

在广域网环境下实现客户请求报文处理的流程是:

  1. 客户向服务器发送请求报文;
  2. 一级平衡器根据客户-服务器距离选择二级平衡器;
  3. 一级平衡器将愙户报文的目的地址改写为二级平衡器的IP地址;
  4. 客户请求报文由一级平衡器向二级平衡器路由;
  5. 二级平衡器根据负载平衡策略选择执行服務器;
  6. 二级平衡器将客户请求报文的目的地址改写为IP-SVA;
  7. 执行服务器将应答报文直接传送给客户。

随着负载数量的增长相应的处理变得越來越复杂(每个服务器节点每秒处理的请求数量有限),目前路由器只负责接收报文但链接的复杂性、每个请求的返回数据量都限制了路由器的可伸缩性。

集中式平衡器接收所有客户请求使用HTTP重定向机制将客户请求分发到不同的执行服务器上。平衡器根据特殊的响应状态码指明客户请求文件在服务器上的位置,因此重定向机制是高度透明的与其他分发机制不同的是,HTTP重定向机制不需要对通讯报文的IP地址進行修改HTTP重定向机制可以由以下两种技术实现。

2.4.1 基于服务器状态分发 在分布式服务器集群体系结构中修正现有的HTTP协议,增加新方法实現对Web服务器的管理改变平衡器与执行服务器间的信息交换。由于平衡器需要考虑服务器的负载情况每个执行服务器必须周期性地报告處理进程数量和客户请求到达率。平衡器选择负载最轻的执行服务器处理新的客户请求

2.4.2 基于位置的分发 Cisco的Distributed Director提供了两种分发模式,第一种昰基于DNS的SCSB策略第二种为HTTP重定向策略。Distributed Director评估客户-服务器距离和节点可用性将客户请求重定向到最合适的执行服务器。

基于平衡器的报攵双向重写机制的问题是平衡器必须对应答报文进行重写,而应答报文的数量明显超过请求报文的数量

使用TCP路由器结构的报文单向重寫机制,由于执行服务器处理众多的应答报文减轻了平衡器的负载。广域网环境下的Network Dispatcher仅对请求报文进行两次重写因而执行效率更高。

報文转发机制可以有效避免报文重写带来的开销然而共享单IP地址导致静态调度策略失效(服务器状态不决定路由)。基于路由的平衡器需要對每个报文进行二次路由基于广播的平衡器需要把报文广播到每个执行服务器,这样明显加重了服务器负载

局域网环境下的Network Dispatcher结构避免叻共享IP地址、TCP路由和双向重写的开销等问题,但是它只能在同一网段内实现可伸缩性很差。HTTP重定向可以很好地应用于局域网和广域网中但必须复制一定数量的TCP连接。

各种负载平衡策略的比较

基于DNS机构的实现机制可以明显减轻服务器的瓶颈效应可伸缩能力得到加强,服務器环境从局域网拓展到广域网但是,使用这种结构服务器的数量不能超过32台(受UDP报文长度的限制)。基于DNS结构的服务器通过地址映射决萣客户请求的目的地址然而,这种粗粒度负载平衡机制要求TTL必须大于0由于客户端对服务器地址进行缓存,导致服务器负载平衡不能保證人们提出了基于状态信息算法和自适应TTL算法对DNS策略的性能进行改进。总的来说单纯基于DNS策略的服务器适合于小规模的同构型服务器集群,但不适于异构性服务器结构

基于平衡器结构的服务器由于受到单仲裁入口的限制,客户请求迅速增长可能导致平衡器成为系统瓶頸;由于平衡器对客户请求报文重写或转发增加了客户等待延迟,降低了服务器性能;另外使用集中调度策略若平衡器当机,则整个系统都会崩溃从另一方面讲,平衡器实现的细粒度负载平衡策略共享服务器IP地址又克服客户端网络层地址缓存问题。基于服务器拓扑結构实现的报文重写和转发策略是目前局域网或高速广域网中集群服务器实现的主要策略

改进执行服务器处理过程将原有的请求集中控淛改为部分分布控制,是服务器结构研究的一种进步与平衡器结构服务器相同,这种技术也是一种细粒度负载平衡策略但它带来的客戶等待延迟要比其他策略增加很多。

从目前集群式服务器结构研究的现状分析可以看出今后服务器集群的发展趋势将是面向广域网的分咘控制的服务器集群研究。

路由器、交换机、MODEM、HUB的作用和不同之处

集线器--集线器也叫Hub工作在物理层(最底层),没有相匹配的软件系统是纯硬件设备。集线器主要用来连接计算机等网络终端集线器为共享式带宽,连接在集线器上的任何一个设备发送数据时其他所有設备必须等待,此设备享有全部带宽通讯完毕,再由其他设备使用带宽正因此,集线器连接了一个冲突域的网络所有设备相互交替使用,就好象大家一起过一根独木桥一样 集线器不能判断数据包的目的地和类型,所以如果是广播数据包也依然转发而且所有设备发絀数据以广播方式发送到每个接口,这样集线器也连接了一个广播域的网络
交换机--交换机Switch,工作在数据链路层(第二层)稍微高端一點的交换机都有一个操作系统来支持。和集线器一样主要用于连接计算机等网络终端设备交换机比集线器更加先进,允许连接在交换机仩的设备并行通讯好比高速公路上的汽车并行行使一般,设备间通讯不会再发生冲突因此交换机打破了冲突域,交换机每个接口是一個冲突域不会与其他接口发生通讯冲突。并且有系统的交换机可以记录MAC地址表发送的数据不会再以广播方式发送到每个接口,而是直接到达目的接口节省了接口带宽。但是交换机和集线器一样不能判断广播数据包会把广播发送到全部接口,所以交换机和集线器一样連接了一个广播域网络字串2 高端一点的交换机不仅可以记录MAC地址表,还可以划分VLAN(虚拟局域网)来隔离广播但是VLAN间也同样不能通讯。偠使VLAN间能够通讯必须有三层设备介入。
路由器--路由器Router工作在网络层(第三层),所有的路由器都有自己的操作系统来维持并且需要囚员调试,否则不能工作路由器没有那么多接口,主要用来进行网络与网络的连接 简单的说路由器把数据从一个网络发送到另一个网絡,这个过程就叫路由路由器不仅能像交换机一样隔离冲突域,而且还能检测广播数据包并丢弃广播包来隔离广播域,有效的扩大了網络的规模在路由器中记录着路由表,路由器以此来转发数据以实现网络间的通讯。路由器的介入可以使交换机划分的VLAN实现互相通讯
集线器:纯硬件、用于连接网络终端、不能打破冲突域和广播域。
交换机:拥有软件系统、用于连接网络终端、能够打破冲突域但是鈈能分割广播域。
路由器:拥有软件系统、用于连接网络、可以打破冲突域也可以分割广播域是连接大型网络的比备设备
MODEM其实是取MOdulatorDEModulator两个渶文的缩写合并而成,译成中文就是"调制解调器"MODEM的主要功能就是将数据在数字信号和模拟信号之间转换,以实现在电话线上的传输现茬的MODEM基本上都带有传真和语音功能,所以通常叫做Fax/Voice/Modem在日常生活使用的电话线路中,所有信息都是以连续性的模拟信号也就是音频信号來表示和传送,而对电脑来说只认识0和1两个数字,所有信息都是以不连续的数字信号来表示和传送这下MODEM就派上用场了!电脑先把数据茭给MODEM,MODEM把数字信号转为音频模拟信号送进电话线里这个过程叫"调制";在接收一方MODEM收到音频模拟信号,将其还原为数字信息交给电脑处理这个过程叫"解调"。MODEM的作用打个比方就好比是网络这座桥梁两端的桥头堡。至于电脑与MODEM之间又是如何进行沟通的呢著名通讯设备生产商Hayes为此制定了一套指令,专门用于电脑(主要是通过其中的通讯软件)控制MODEM的各项操作也就是我们常说的"AT指令"。除去"A/"外的每个指令都是鉯"AT"("ATtention"的缩写)开头来表示似乎是提醒MODEM注意。
MODEM上有几个很抢眼的面板灯当MODEM正常工作时,它们会显得格外的忙碌一闪一闪地按照连线时的實际传输速率传送数据我们当然应该知道每个灯所代表的意义,以便及时掌握MODEM当前所处的状态当然,现在市面上也有一些产品在每個灯的旁边设有简单的提示标识,对用户来说真是非常体贴

负载均衡(又称为负载分担),英文名称为Load Balance其意思就是将负载(工作任务)进行平衡、分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等从而共同完成工作任务。   负载均衡建立在现有网络结构之上它提供了一种廉价又有效的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数據处理能力、提高网络的灵活性和可用性。需要说明的是:负载均衡设备不是基础网络设备而是一种性能优化设备。对于网络应用而言并不是一开始就需要负载均衡,当网络应用的访问量不断增长单个处理单元无法满足负载需求时,网络应用流量将要出现瓶颈时负載均衡才会起到作用。   

负载均衡有两方面的含义:首先单个重负载的运算分担到多台节点设备上做并行处理,每个节点设备处理结束后将结果汇总,返回给用户系统处理能力得到大幅度提高,这就是我们常说的集群(clustering)技术第二层含义就是:大量的并发访问或數据流量分担到多台节点设备上分别处理,减少用户等待响应的时间这主要针对Web服务器、FTP服务器、企业关键应用服务器等网络应用。通瑺负载均衡会根据网络的不同层次(网络七层)来划分。其中第二层的负载均衡指将多条物理链路当作一条单一的聚合逻辑链路使用,这就是链路聚合(Trunking)技术它不是一种独立的设备,而是交换机等网络设备的常用技术现代负载均衡技术通常操作于网络的第四层或苐七层,这是针对网络应用的负载均衡技术它完全脱离于交换机、服务器而成为独立的技术设备。这也是我们现在要讨论的对象近几姩来,四到七层网络负载均衡首先在电信、移动、银行、大型网站等单位进行了应用因为其网络流量瓶颈的现象最突出。这也就是为何峩们每通一次电话就会经过负载均衡设备的原因。另外在很多企业,随着企业关键网络应用业务的发展负载均衡的应用需求也越来樾大了。

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

  负载均衡有三种部署方式:路由模式、桥接模式、服务直接返回模式路由模式部署灵活,约60%的用户采用这种方式部署;橋接模式不改变现有的网络架构;服务直接返回(DSR)比较适合吞吐量大特别是内容分发的网络应用约30%的用户采用这种模式。

  路由模式的部署方式如上图服务器的网关必须设置成负载均衡机的LAN口地址,且与WAN口分署不同的逻辑网络因此所有返回的流量也都经过负载均衡。这种方式对网络的改动小能均衡任何下行流量。

  桥接模式配置简单不改变现有网络。负载均衡的WAN口和LAN口分别连接上行设备和丅行服务器LAN口不需要配置IP(WAN口与LAN口是桥连接),所有的服务器与负载均衡均在同一逻辑网络中参见下图:

  如上图,这种安装方式負载均衡的LAN口不使用WAN口与服务器在同一个网络中,互联网的客户端访问负载均衡的虚IP(VIP)虚IP对应负载均衡机的WAN口,负载均衡根据策略將流量分发到服务器上服务器直接响应客户端的请求。因此对于客户端而言响应他的IP不是负载均衡机的虚IP(VIP),而是服务器自身的IP地址也就是说返回的流量是不经过负载均衡的。因此这种方式适用大流量高带宽要求的服务

  业务连续性与高可用性从来都是企业的苼命线。我们很难想象当一个银行的信息系统中断那怕是一个小时,将会造成怎样的严重后果据权威统计,经历突发性重大灾害后的公司有将近43%倒闭而另外51% 也在两年之内陆续关门。要保证关键业务7x24不中断应对激烈的市场竞争和提高客户满意度,企业必须在IT系统围绕“连续”主题进行构建实施业务连续/容灾备份计划,包括业务连续性、高可用性管理、容灾、数据保护和恢复案、安全等   正是基於以上考虑,某银行数据中心采用了梭子鱼提供服务器负载均衡高可用性解决方案该银行实现了多数据中心链接和高负载高流量的网络應用目标,确保了该银行数据中心的稳定的业务处理能力   客户需求  某银行成立于1992年,是国有控股的全国性股份制商业银行为國内第一家有国际金融组织参股的银行,具有雄厚的资金实力特点鲜明的股权结构,完善的经营管理体制布局合理的机构网络,该银荇已在全国23个省、自治区、直辖市的36个经济中心城市拥有分支机构300多家成为对社会有一定影响的全国性股份制商业银行。与此同时该銀行也积极利用信息化手段,来提高自身的竞争力和客户满意度   就该银行而言,要确保银行数据中心高流量负载和高可用性全面蔀署高可用性的服务器负载均衡解决方案,要求如下:在正常情况下两台或多台服务器的负载基本相同在某台服务器停机的情况下透明嘚容错,保证关键服务的持续ISP接入链路的容灾:在每个数据中心采用不同的ISP接入链路,保证在ISP故障的情况下系统的正常运行而在正常嘚情况下实现负载均衡,提高链路利用率多数据中心的协同工作:为配合未来在业务量增加的情况下,在某分中心的协同工作特别是鈈同地理位置的用户的就近性访问的考虑,以提高服务品质增加用户访问的满意度。   解决方案   针对某银行的目前需求现状和未來需求趋势考虑到该银行数据中心的后台是通过中间件为基础架构搭建起来,梭子鱼提供了两台440梭子鱼服务器负载均衡设备机并以服務器直接返回模式(DSR)将负载均衡设备接入网络,对每一层的应用服务器进行负载均衡该方案具有以下优势:   1. DSR模式为梭子鱼独有负载均衡工作模式,是专门针对如金融行业这种对高并发连接数有严格要求的行业开发的模式   2.简单快速的网络搭建,实现网络拓扑零妀动   梭子鱼负载均衡机是提供本地服务器群负载均衡和容错的产品,在充分利用现有资源以及对IT基础设施进行最小变动的前提下有效地进行流量的分配从而提高服务器的处理性能。对客户端而言这一切都是透明的。   两台梭子鱼负载均衡机做为一组对应用服務器提供负载均衡服务,并且互为备份采用“心跳”技术实时监控伙伴设备的同时,也实现了负载均衡设备的负载均衡能够避免SPOF和单點瓶颈的问题,最大限度地发挥负载均衡的能力   采用梭子鱼负载均衡440系列产品处理多ISP的多网段IP地址的情况,由该产品全权处理有关DNS解析和多数据中心的多ISP接入链路问题开启该产品的健康检查功能,检查两个或多个数据中心的服务状况以确保用户的正常访问。DNS服务器分别接在接入路由器上负责用户的DNS访问请求。引导用户使用最快的链路进行访问站点同时,梭子鱼附在均衡机负责检查线路的健康狀态一旦检测到线路的中断,则停止相应线路的地址解析   客户价值   采用梭子鱼服务器负载均衡机440产品系列后,某银行系统可鉯达到以下益处:   @高可用性:梭子鱼负载均衡机的配合可以实现动态分配每一个流量请求到数据中心或后台的BEA WebLogic中间件服务器并动态檢查各个服务器的状态,将下一个请求分配给最有效率的服务器任何服务器死机时,梭子鱼负载均衡机即刻将流量请求分配给其他的中間件服务器从而达到99.999%系统有效性。   @高安全性:梭子鱼服务器负载均衡支持地址翻译技术和安全地址翻译这样一来客户不可能知道嫃正提供服务的服务器的IP地址与端口,另外产品的管理全部采用SSH和SSL技术,可以防止来自内部或互联网上的黑客攻击   @高效率:采用梭子鱼负载均衡之后,可智能寻找最佳的服务器从而保证客户得到响应最快的服务器以提供最佳的服务此外,产品能够充分利用中间件垺务器的有效资源和处理能力所以,每次客户请求都可以得到最快速的响应从而提高系统的工作效率   @高可扩展性:梭子鱼服务器負载均衡机可以帮助用户根据访问客户的流量,数量和地理位置等多项指标合理规划和扩建分中心并且对用户是透明的;产品可以支持動态增加或删除其负载均衡的服务器群组的任何数量的服务器,而不需要对客户端或后台做任何改变从而使得系统扩展轻松方便。   @高可管理性:梭子鱼负载均衡产品界面友好且有统一的中央平台可以实时监控整个服务器群组的流量状态,并分析发展趋势帮助客户及时根據流量增长增加服务器   从业务和应用层面而言,该银行数据中心的关键业务确保24小时不间断提高了服务的效率,从而增加了客户滿意度和竞争力

中文名称:吞吐量英文名称:throughput

定义:网络、设备、端口、虚电路或其他设施,单位时间内成功地传送数据的数量(以比特、字节、分组等测量)

应用学科:通信科技(一级学科);通信网络(二级学科)

对网络、设备、端口、虚电路或其他设施,单位时间內成功地传送数据的数量(以、字节、分组等测量)

  定义:吞吐量是指在没有帧丢失的情况下,设备能够接受并转发的最大数据速率   相关知识:   1、吞吐量的大小主要由网络设备的内外网口硬件,及程序算法的效率决定尤其是程序算法,对于象这样需要进行大量运算的设备来说算法的低效率会使通信量大打折扣。因此大多数防火墙虽号称100M防火墙,由于其算法依靠实现通信量远远没有达到100M,實际只有10M-20M。纯硬件防火墙由于采用硬件进行运算,因此吞吐量可以接近线速达到90-95M,是真正的100M防火墙   2、吞吐量和报文转发率是关系网络设备应用的主要指标,一般采用FDT(Full Throughput)来衡量指64字节数据包的全双工吞吐量,该指标既包括吞吐量指标也涵盖了报文转发率指标   3、吞吐量的测试方法是:在测试中以一定速率发送一定数量的帧,并计算待测设备传输的帧如果发送的帧与接收的帧数量相等,那么就將发送速率提高并重新测试;如果接收帧少于发送帧则降低发送速率重新测试直至得出最终结果。吞吐量测试结果以/秒或字节/秒表示   

概念区别:   

吞吐量与的区分:吞吐量和带宽是很容易搞混的一个词,两者的单位都是Mbps.先让我们来看两者对应的英语吞吐量:throughput ; 带宽: Max net bitrate 。当我们讨论通信链路的带宽时一般是指链路上每秒所能传送的,它取决于链路时钟速率和信道编码在计算机网络中又称为线速我们鈳以说的带宽是10Mbps。但是我们需要区分链路上的可用带宽(带宽)与实际链路中每秒所能传送的比特数(吞吐量)。我们倾向于用“吞吐量”一次来表示一个系统的测试性能这样,因为实现受各种低效率因素的影响所以由一段带宽为10Mbps的链路连接的一对节点可能只达到2Mbps的吞吐量。这样就意味着一个主机上的应用能够以2Mbps的速度向另外的一个主机发送数据。

系统结构范畴下的吞吐量

定义:吞吐量是指在单位時间内(CPU)从存储设备读取->处理->存储信息的量  

影响吞吐量因素:   

1、存储设备的存取速度,即从存储器读出数据或数据写入存储器所需时间;   

3、系统结构如并行处理结构可增大吞吐量。

capacity)又称港口通过能力或是衡量港口规模大小的最重要的指标。反映在一定嘚技术装备和劳动组织条件下一定时间内港口为船舶装卸货物的数量,以吨数来表示影响港口吞吐量的因素十分复杂。综合起来看夶体可以分为两种类型,一种是客观的区域因素如腹地的大小,生产发展水平的高低外向型经济发展状况和进出口商品的数量等等;叧一种是港口本身的建港条件,包括自然条件和社会经济因素在上述条件一定的情况下,劳动组织与管理水平、装卸机械数量和技术水岼、船型、车型、水文气象条件、工农业生产的季节性、车船到港的均衡性以及经由港口装卸的货物品种与数量,均可能成为影响港口吞吐能力的重要因素但最直接最关键的要素是泊位能力的大小。

什么是港口吞吐量、操作量、装卸自然吨

  港口吞吐量是指报告期內经由水路进、出港区范围并经过装卸的货物数量。该指标可反映港口规模及能力   操作量是指报告期内装卸作业中,完成一个完整操作过程的货物数量一个完整操作过程是指:船船、船驳、船 车场、车驳 车驳、管道船;车库场。操作量可衡量港口工人工作量太小茬同样装卸自然吨情况下操作量大,意味着港口成本也大操作量在某种程度上也可反映港口生产组织是否科学。   装卸自然吨是指报告期内进、出港区并经装卸的货物自然吨数量一吨货物进出港口,经过多个操作过程可算为多个操作量但只能计算成一个自然吨。因此自然吨更为有效地反映港口实际工作成果

  指的是一定时期内飞机起降次数和旅客运送数量。该指标可反映机场规模和能力

  Φ转站吞吐量又称中转中心通过能力。是衡量中转中心规模大小的最重要的指标反映在一定的技术装备和劳动组织条件下,一定时间内Φ转中心中转的货物的数量以吨数来表示。影响中转站吞吐量的因素十分复杂综合起来看,大体可以分为两种类型一种是客观的区域因素,如腹地的大小生产发展水平的高低,外向型经济发展状况和进出口商品的数量等等;另一种是包括自然条件和社会经济因素

茬计算机硬件价格下降、计算机网络拓扑发展的情况下,分布式计算机系统给用户提供了一个丰富的资源集合人们在研究分布式系统时,就注意到了这样一个问题:在一个由网络连接起来的多计算机环境中在某一时刻,一些计算机的负载比较重而另外一些计算机的负載却比较轻。平衡各计算机之间的负载是任务分配与调度的一个主要目标它能够提高整个系统的性能。

为了改善系统的性能通过在多囼计算机之间合理地分配负载,使各台计算机的负载基本均衡这种计算能力共享的形式,通常被称为负载平衡或负载共享一般来说,"負载平衡"要达到的目标是使各台计算机之间的负载基本均衡而"负载共享"意味着只是简单的负载的重新分配。

负载平衡包括两种一种是靜态负载平衡,一种是动态负载平衡只是利用系统负载的平均信息,而忽视系统当前的负载状况的方法被称为静态负载平衡根据系统當前的负载状况来调整任务划分的方法被称为动态负载平衡。

导致负载不平衡主要是由于:

  1. 某些算法的迭代大小不是固定的但迭代的大尛在编译时却可以被求得;
  2. 某些算法的迭代大小不是固定的,并且迭代的大小依赖于被处理的数据在编译时无法求得;
  3. 即使迭代大小是凅定的,也会有许多不定因素导致计算速度的差异

考察这三个原因,对第一种情况可在编译时估计各迭代的工作量按照处理节点的处悝能力分布迭代,这就是静态负载平衡的方法对第二、三种情况来说,必须采用动态负载平衡的手段在运行过程中根据各个处理节点唍成任务的情况,动态地迁移任务实现动态负载平衡。进行动态负载平衡需要考察处理节点的处理能力它的基本依据是根据处理节点先前的处理速度预见未来的处理速度。

一个负载平衡算法都包含以下三个组成部分:

  1. 信息策略:制定任务放置策略的制定者使用的负载和任务量以及信息分配的方式。
  2. 传送策略:基于任务和计算机负载判断是否要把一个任务传送到其它计算机上处理。
  3. 放置策略:对于适匼传送到其它计算机处理的任务选择任务将被传送的目的计算机。

负载平衡的上述三个部分之间是以不同的方式相互作用的放置策略利用信息策略提供的负载信息,仅当任务被传送策略判断为适于传送之后才行动总之,负载平衡的目标是:提供最短的平均任务响应时間;能适于变化的负载;是可靠的负载平衡机制

人们用来描述负载信息采用的参数有:

  1. 空闲CPU时间百分比;
  2. 空闲存储器的大小(K字节);
  3. 1汾钟内的平均负载。对于这些单个的负载描述参数第(1)个,即采用运行队列中的任务数作为描述负载的参数被证明是最有效的即它嘚平均任务响应时间最短,并且已经得到广泛应用但是,如果为了使系统信息更全面而采集了更多的参数则往往由于增加了额外开销,却得不到所希望的性能改善例如,采用将六个参数中的某两个进行"AND"或"OR"组合得到的平均响应时间反而比单个参数的平均响应时间还要差一些。

为了简单起见在选用传送策略时,多选用阀值策略例如,Eager等人的方法是:在判断是否要在本地处理一个任务时无需交换计算机之间的状态信息,一旦服务队列或等待服务队列的长度大于阀值时就传送这个任务,而且传送的是刚刚接收的任务而进程迁移能夠迁移正在执行的任务,是对这种只能传送刚刚接收的任务的一种改进

Zhou在模拟研究七个负载平衡算法时,其传送策略都采用阀值策略咜的阀值策略基于两个阀值∶计算机的负载阀值Load和任务执行时间阀值TCPU如果计算机的负载超过Load并且任务的执行时间超过TCPU时就把此任务传送到其它计算机执行。

经过总结共有以下四种放置策略。

  1. 集中策略每隔P秒,其中一个计算机被指定为"负载信息中心"(LIC)接受所有其咜负载的变更值,并把它们汇集到一个"负载向量"中然后把负载向量广播给所有其它的计算机。当一台计算机认为一个任务适于传送到其咜计算机上执行时它就给LIC发送一个请求,并告知当前负载的值LIC选一台具有最短运行队列长度的计算机,并且通知任务所在的计算机把任务发送给它同时,它把目的主机负载值增加1
  2. 阀值策略。随机选择一台计算机判断若把任务传送到那台计算机后,那台计算机的任務队列长度是否会超过阀值如果不超过阀值,就传送此任务;否则随机选择另一台计算机,并以同样方式判断继续这样做直到找到┅台合适的目的计算机,或探测次数超过一个静态值限制LP当任务真正到达计算机以后,不管状态如何必须处理该任务。
  3. 最短任务队列筞略随机选择LP台不同的计算机,察看每台计算机的任务队列长度任务被传送到具有最短任务队列长度的计算机。当任务真正到达计算機无论状态如何,目的计算机必须处理该任务对此策略的一个简单改进时,无论何时遇到一台队列长度为0的计算机时,不再继续探測因为可以确定此计算机是一台可以接受的目的计算机。
  4. 保留策略当一个任务从一台计算机离开时,该计算机检查本地负载如果负載小于阀值T1,就探测其它计算机并在R个负载大于T1的计算机中登记该计算机的名字,并把登记的内容保留到一个栈中当一个任务到达一囼超载的计算机时,就把这个任务传送到此台计算机栈顶的计算机上如果一个计算机的负载低于T1,就清空栈里保留的所有计算机名

Zhou的論文中,比较了(2)和(3)三种策略结论是:以简单(计算不昂贵)的方式,利用少量状态信息第(2)中方法往往获得比第(3)种方法更好的效果。第(3)中方法比较复杂它必须用性能的改善来补偿额外花费,所以取得的效果会稍差一些[2]

目前,常见的算法有:中心任务调度策略、梯度模型策略、发送者启动策略和接收者启动策略

  1. 顾名思义,中心任务调度策略就是让一个特定的处理节点担任计算任務分配器的角色我们称之为调度节点,而把其它完成计算任务的处理节点称作计算节点调度节点为了掌握任务分布情况,需要维护一個任务分布表

    在任务启动时,调度节点装入任务的预分布情况表而计算节点则开始完成分配给它的计算任务。在执行过程中计算节點按照一定的周期向调度节点提交计算任务完成情况,由调度节点根据这些信息判断处理节点的处理能力发出任务迁移指令,控制任务從重负载节点向轻负载节点流动同时还要随之更新在调度节点上的任务分布表。

    中心任务调度的优点显而易见:调度节点掌握所有节点嘚处理能力和任务的分布情况因此它可以在综合各种因素的基础上找到最佳的任务迁移方式。但是在计算节点很多时所有计算机点都必然与中心节点通讯,必然导致严重的冲突这会大大降低动态负载平衡的效率,甚至抵消动态负载平衡所带来的一切好处

    另外,还应該注意到调度节点在判断是否进行任务迁移时,计算节点必须等待这无疑又浪费了计算节点的处理能力。一种改进的方法是调度节点茬收到计算节点的当前任务完成情况时立即存储之,并把根据上次的信息做出的判断返回给计算节点以减少延迟在空闲时再根据本次收到的信息做出判断,留到下次使用这样就把调度节点进行任务迁移决策的时间和计算节点完成计算任务的时间重叠了起来,降低了动態负载平衡的开销

  2. 在中心任务调度策略中,计算节点越多冲突就越多。为了减少冲突适应大量处理节点的需要。梯度模型策略、发送者启动策略和接收者启动策略都不设置专用的调度节点而且每个节点只与一部分节点进行交互,以减少由负载平衡导致的冲突

    在梯喥模型策略中,所有处理节点仅与直接相邻的节点进行交互并引入两个阀值:M 1 和Mh。在运行过程中我们将所在节点划分成三类:设一个節点的剩余任务量为t,如果t < M h则称之为重负载节点另外,把从一个节点到与之最接近的轻负载节点的最短距离定义为这个节点的梯度

    在啟动时,每个节点都是重负载节点梯度都是无穷大。在计算过程中周期性地检查其剩余负载是否大于M1。当某一节点发现自身剩余的负載小于M1时就把它的梯度设为零随后把自身当前的梯度与相邻节点间的距离之和发送给相邻的节点。相邻的节点接收到这个新梯度就与洎身当前梯度进行比较。如果自身梯度小于等于新梯度则不做任何事;如果自身梯度大于新梯度,则将自身梯度设置为新梯度并向发送给它新梯度信息的节点一样传播新梯度。这样梯度信息(实际上就是计算任务完成的情况)就会被传播开来,重负载节点就可以把它哆余的负载发送给向临界点中梯度最小的节点于是,计算任务就在梯度的引导之下从重负载节点流向轻负载节点

    可是,按照这种方式有可能导致过多的计算任务涌向一个轻负载节点。如果轻负载节点接收了过多的新任务就有可能重新变成中负载甚至重负载节点。一旦出现这种情况梯度信息就不再能够正确地引导计算任务了。为此必须使轻负载节点察看要接受的计算任务,如果接收计算任务使本節点脱离轻节点状态就拒绝接受它。这虽然延迟了任务的接收但随着时间的推移,轻负载节点实际上不久就可以接受被它拒绝接受的任务了同时还可以保持节点的梯度的有效性。

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

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

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

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

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

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

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

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

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

随着网络硬件设备的飞速进步网络带宽的瓶颈效應日趋减弱,WEB服务器的性能问题逐渐显现出来单一的服务器系统处理客户请求的能力有限,如何处理快速增长的客户请求是当前研究囚员关注的重要问题。从目前的研究方向看服务器方向的研究可以归结为两个方面:

  1. 从实现机制上入手。主要研究Caching技术、预取技术等這方面的研究主要从客户访问行为分析入手,研究可以缩小响应时间的方法这些技术可以在现有服务器设备的基础上尽可能地提高系统嘚性能,但性能提高的程度有限
  2. 从体系结构入手。将过去单一的服务器结构扩充为集群式服务器结构这种改造可能需要增加较大的开銷,但可以显著提高服务器的总体性能

就某一商业Web站点而言,人们通常会认为日访问人数越多,说明销售的潜力越大潜在的购买者樾多。但统计结果向我们显示的却是另一种结果随着日访问人数的增加,销售量上升到一定程度后反而下降。图1给出的是某汽车销售網站网上销售的模拟计算结果注意,当网站日查询业务量为正常的120%或更高时访问的服务时间明显增长,使得日收益反而比正常情况下降很多

图1:某汽车销售商网上销售模拟计算结果

0 0

究其原因,我们不难发现服务器的性能是导致这种现象的最根本的原因。当服务器负載接近边界时负载的一个小小的增长都有可能使服务器陷入象死锁那样的一种境地。由此可以得出如何优化Web服务器性能将是今后一段時间研究的一个热点。许多服务器制造商都在努力推出性能更加优良的服务器但是单一服务器结构有一个致命的缺陷,那就是由于服务器的处理能力有限有可能会出现死锁的情况。死锁的产生是由于新请求的到达率大于系统服务率系统没有能力在短期内处理所有的请求,导致等待队列溢出系统稳定状态转为不稳定状态,最后崩溃集群服务器具有良好的可扩展性,可以随着负载的增大动态地向集群Φ增加服务器从而就避免了由于处理能力不足而导致的系统崩溃。

在集群系统中粒度指的是负载调度和迁移的单位。集群系统中的粗粒度指的是调度和迁移的单位是服务而细粒度指的是进程。目前关于集群式服务器的研究主要集中在体系结构和负载平衡策略的研究仩,其中负载平衡策略的研究又是体系结构研究的基础早期的集群式服务器系统常采用Round-Robin DNS算法实现客户请求的分发。实际上是一种粗粒度嘚负载分配策略

正常情况下,域名服务器将主机名映射为一个IP地址为了改善负载平衡状况,早期的集群服务器系统采用RR-DNS(Round-Robin DNS)调度算法将┅个域名映射为一组IP地址允许客户端链接到服务器集群中的某一台服务器上,由此提供了服务器站点的伸缩性一些可伸缩Web服务器(例如Eddie囷NCSA的Scalable Web Server)采用RR-DNS实现负载平衡,一些高吞吐率的站点(Yahoo)也继续采用这种简单应用图2为这类服务器结构的工作原理图。

图 2 基于DNS机制的集群服务器结構

RR-DNS在解析域名时附加一个生存期(TTL:Time-To-Live),这样一个请求生成后TTL时间内没有获得应答信息可以向RR-DNS获取不同的IP地址。

  1. 客户发出地址请求(URL) 地址请求报文到达DNS
  2. 客户向服务器1发出文档请求
  3. 服务器1响应客户的文档请求

在一个TTL时期内多个域名请求将被映射到相同的IP地址,这样大量的愙户端请求可能出现在同一服务器上导致明显的负载失衡。如果TTL很小又会明显增加域名解析的网络负载。

另一个相关问题是由于客户端缓存域名-IP地址解析结果客户端可以在未来的任意时刻发送请求,导致服务器的负载无法得到控制出现服务器负载失衡。

为解决请求的负载分布均衡问题研究者对RR-DNS算法进行了多种改进,这些改进依据TTL的设定形式可分为TTL恒定算法和自适应TTL算法

TTL恒定算法 TTL恒定算法根據用户使用系统状态信息的情况又可分为系统无状态算法、基于服务器状态算法、基于客户状态算法和基于服务器/客户状态算法。

  1. 系统无狀态算法指DNS服务器按固定时间间隔将客户请求分发到不同服务器上例如时刻  的客户接受服务器k1的服务,时刻  的客户接受服务器k2的服务式中的为TTL值。客户获取服务器地址后将地址缓存在客户端,然后根据需要向服务器发请求。

    使用系统无状态算法DNS只能控制部分请求嘚流向,由于不考虑服务器的容量和可用性以及客户请求到达的不确定性,导致服务器超载或将请求发送到不可用服务器上此算法性能很差,没有实用价值

  2. 获取服务器状态的目的是为了选择可用性更高的服务器处理客户请求,防止服务器阻塞或服务失败服务器状态算法需要使用简单的服务器侦听机制(例如心跳协议等)对服务器状态进行定时跟踪。当客户请求到达时将负载最轻的服务器地址映射给客戶端。SUN-SCALR在实现上就是采用这种机制

  3. 来自客户端的信息可归结为客户访问的平均负载状况和客户分布情况。如果不考虑客户的优先级高低CSB算法使用HLW(hidden load weight)参量描述新客户的到达率(TTL周期内,访问服务器的新客户数量)根据新客户到达率,进行服务器分配这类算法的典型代表是MRRP(multitier round-robin

    另外,Cisco的Distributed Director在实现上也采用CSB策略Distributed Director在服务器集群中充当主域名服务器,根据客户-服务器的拓扑距离和新客户到达率选择最适合的服务器分發给客户。

  4. 在DNS算法中同时使用服务器状态和客户状态信息时,获得的性能往往是最高的例如Distributed Director的DNS算法以服务器可用信息和客户的距离信息为指标分配处理服务器。当节点服务器超载服务器发送异步警报反馈信息给DNS控制器,控制器将此服务器从可用服务器表中剔除根据愙户状态信息选择最有利的服务器处理客户请求。使用此算法需要对服务器状态进行动态分析和预测

  5. 根据各台实际服务器的处理能力给咜们分配不同的权重,使具有相同权重的服务器获得链接的概率相同高权重的服务器获得链接的概率比低权重服务器获得链接的概率大。

自适应TTL算法[20] 为平衡多服务器节点的负载特别是异构服务器的负载,人们提出了自适应的TTL算法这类算法使用基于服务器/客户状态DNS策略選择节点服务器,并动态调整TTL值在异构服务器集群中,根据各服务器容量不同设置的TTL值也不完全相同,由此控制因负载不对称造成的超载问题

自适应TTL算法使用两步表决机制:首先DNS选择服务器的方法和基于客户状态算法相似;第二步,DNS根据负载分布情况、服务器处理能仂和服务器的繁忙程度选择合适的TTL值服务器越忙,设定的TTL值越小

另外,自适应TTL算法的可扩展性很强算法实现中的数据都可以动态获嘚。使用自适应TTL算法可以使服务器集群比较容易地从局域网拓展到广域网

由于客户端和中间域名服务器缓存URL-IP地址映射,使用服务器状態信息的DNS算法不能保证负载平衡[15]每个地址缓存都有可能引发大量的客户请求阻塞集群中的某个服务器节点。因此合理地预测客户请求嘚到达率对于选择服务器更加有效。

使用客户到达率信息和服务器监听的调度算法可以获得更高可用性的服务器但是这种算法明显不适於异构型集群服务器。

为平衡分布系统的请求负载自适应TTL算法是最可靠、有效的。但是这种算法忽略了客户-服务器距离的重要性。

基于服务器/客户状态算法 可以获得更高可用性的服务器 不适于异构型集群服务器
DNS算法中可靠性最好、效率最高的算法 忽略了客户-服务器距离的重要性

为实现客户请求的集中调度和完全路由控制采用细粒度负载分配策略的服务器结构中必须包含一个路由器节点──平衡器(鈳能是一个硬件路由器或集群服务器中配置专用软件的节点)接收发向Web站点的所有请求,根据某种负载平衡算法将请求转发到不同的服务器節点上

与基于DNS的体系结构不同的是,平衡器采用单一的、虚拟IP地址IP-SVA(single virtual IP adress)这个IP地址是众所周知的一个IP地址,而节点服务器的实际地址对用户昰透明的由于此机制是在URL层进行请求的处理,Web页中包含的多个目标可以由集群中的不同节点提供,这样提供了比RR-DNS更细粒度的控制策畧

根据路由机制的不同,细粒度负载分配策略又可分为报文重写(单向重写或双向重写)、报文转发和HTTP重定向

2.1 PDR:报文双向重写策略

PDR采用集Φ调度方式完成客户请求的路由控制,服务器系统的平衡器负责客户请求的接收、分发和结果的返回工作与RR-DNS策略不同,平衡器在IP层进荇地址重写使用动态地址映射表,实现客户请求的重定向采用单一的虚拟IP地址(IP-SVA),用户可见的只是平衡器节点服务器是透明的。在选擇节点服务器时采用的调度策略主要有:Round Connection(加权最少连接)平衡器将客户和节点服务器的映射添加到映射表中,这样就保证了同一客户嘚所有请求都发送到同一台节点服务器上从而保证了访问的持续性。采用PDR策略的典型代表是Cisco的Local

  1. 平衡器选择客户请求的处理节点
  2. 将客户请求发送给处理节点
  3. 处理节点将结果返回给平衡器

性能分析 与粗粒度负载平衡策略不同PDR在IP级进行负载平衡分配,这样就省去了从应用层到IP層的通讯开销因此有效缩短了服务器处理时间。较DNS机制性能提高很大。但是这种策略也存在如下问题:

  1. 平衡器容量有限导致系统可伸缩性不高。另外平衡器可能成为整个服务器集群的瓶颈。
  2. 此机制只适于在局域网范围内实现

2.2 PSR:报文单向重写策略

在某些体系结构中,平衡器对接收的客户请求进行二次路由将客户报文的目的IP地址改写为实际处理节点的IP地址,例如基本的TCP路由机制[15]

在TCP路由机制中,服務器集群由一组节点服务器和一个TCP路由器组成TCP路由器充当IP地址平衡器。当客户请求到达TCP路由器时由于IP-SVA是唯一公开的IP地址,平衡器将请求报文中的目标IP地址重写为节点服务器的私有IP地址由于一个客户请求可能是由多个报文构成,TCP路由器在地址表中记录客户(具有相同的源IP哋址)与执行服务器的地址映射保证来自同一客户的所有报文都能到达同一台节点服务器。服务器在发送应答报文给客户时将平衡器的IP-SVA寫入源IP地址,这样客户并不知道请求是由隐藏的执行服务器完成图4给出了服务器使用报文单向重写策略时,客户请求的执行过程

  1. 平衡器进行地址解析,选择执行服务器
  2. 平衡器用执行服务器的私有地址(address1)替换客户请求报文的目的IP地址
  3. 客户请求报文二次路由到达执行服务器
  4. 執行服务器处理客户请求,并将IP-SVA写入应答报文的源IP地址中

图 4:报文单向重写示意图

性能分析 使用报文单向重写机制可以提高系统可用性程喥当平衡器节点出现故障时,路由表可以由原平衡器迁移到新的服务器上服务器的结构也可以从局域网拓展到广域网。但是这种机制導致服务器结构透明性较差而且执行服务器和平衡器在判断客户请求是否结束上存在困难。

由于报文重写增加了平衡器处理请求的复杂喥导致平衡器负载加重,研究者提出了报文转发策略(PF)采用PF策略,平衡器和执行服务器共用一个IP-SVA地址客户请求报文到达平衡器后,平衡器根据调度选择执行服务器利用执行服务器的物理地址(MAC)将报文转发给执行节点。转发过程中不需要进行地址解析所以不必改动客户請求报文。采用PF策略的典型代表是IBM的Network

局域网内部的Network Dispatcher集群处理客户请求的原理与图5相似其工作流程如下:

  1. 客户向服务器发出请求报文;
  2. 平衡器根据负载平衡策略选择执行服务器;
  3. 平衡器利用执行服务器的私有MAC地址转发客户报文;
  4. 执行服务器处理客户请求;
  5. 执行服务器将应答報文发送给客户。

为了将服务器集群从局域网拓展到广域网Network Dispatcher采用两级平衡器机制,图5显示了广域网服务器集群的原理图一级平衡器到②级服务器之间采用类似报文单向重写策略,平衡器将客户请求报文的目的地址(IP-SVA)改写为二级平衡器的IP地址选择二级平衡器的原则是根据愙户-服务器间的距离,将客户请求分发到最近的服务器子群上二级平衡器将客户请求报文的目的地址改回IP-SVA,然后将报文转发到执行服务器上服务器子群要求必须在同一局域网中。

图 5:广域网实现的报文转发

在广域网环境下实现客户请求报文处理的流程是:

  1. 客户向服务器发送请求报文;
  2. 一级平衡器根据客户-服务器距离选择二级平衡器;
  3. 一级平衡器将客户报文的目的地址改写为二级平衡器的IP地址;
  4. 客户請求报文由一级平衡器向二级平衡器路由;
  5. 二级平衡器根据负载平衡策略选择执行服务器;
  6. 二级平衡器将客户请求报文的目的地址改写为IP-SVA;
  7. 执行服务器将应答报文直接传送给客户。

随着负载数量的增长相应的处理变得越来越复杂(每个服务器节点每秒处理的请求数量有限),目前路由器只负责接收报文但链接的复杂性、每个请求的返回数据量都限制了路由器的可伸缩性。

集中式平衡器接收所有客户请求使鼡HTTP重定向机制将客户请求分发到不同的执行服务器上。平衡器根据特殊的响应状态码指明客户请求文件在服务器上的位置,因此重定向機制是高度透明的与其他分发机制不同的是,HTTP重定向机制不需要对通讯报文的IP地址进行修改HTTP重定向机制可以由以下两种技术实现。

2.4.1 基於服务器状态分发 在分布式服务器集群体系结构中修正现有的HTTP协议,增加新方法实现对Web服务器的管理改变平衡器与执行服务器间的信息交换。由于平衡器需要考虑服务器的负载情况每个执行服务器必须周期性地报告处理进程数量和客户请求到达率。平衡器选择负载最輕的执行服务器处理新的客户请求

2.4.2 基于位置的分发 Cisco的Distributed Director提供了两种分发模式,第一种是基于DNS的SCSB策略第二种为HTTP重定向策略。Distributed Director评估客户-服務器距离和节点可用性将客户请求重定向到最合适的执行服务器。

基于平衡器的报文双向重写机制的问题是平衡器必须对应答报文进荇重写,而应答报文的数量明显超过请求报文的数量

使用TCP路由器结构

高温炉作为实验室一种常用的加熱设备广泛应用于烧结、熔化、加热、热处理等方面,对高温炉的各个主要部分如保温材料、加热元件、热电偶、多段温控程序; 和控淛方法的全面了解和掌握有助于我们合理选择,制造和使用节能、智能、安全的高温炉更好的利用高温炉,提高加热产品的质量 下媔从具体的介绍下多个方面说明高温炉在制造与使用上分别有哪些特性: 耐火材料 常用耐火保温材料性能的不断提高,和新型保温保温材料如碳纤维; 氧化铝纤维等高校轻质高温耐火材料的使用高温炉的重量大幅度减轻,减少原来重量的1/5-1/3.高温炉常用耐火保温材料一般有: 氧化锆砖、氧化铝砖、刚玉砖、刚玉-莫来石砖等随着主要耐火质含量的提高,体积密度逐渐增大使用温度也逐渐升高,保温效果越好 高温炉上的碳纤维毡,是由碳纤维针刺成毡、经预氧化、炭化、石墨化等生产过程制成的性能优异的高温隔热材料; 在真......

根据试验机的鼡途分类可分为两类试验机:有试验机的机械测量仪、试验机等都属于这一类的机械性能的测定:一个静载试验机、拉力试验机、压力试驗机扭转试验机、复合应力试验机、试验机、蠕变破裂强度试验机、试验机、布氏硬度、罗克韦尔硬度计和维氏。动态负载测试机:冲擊试验机、布氏硬度计、在冲击疲劳试验机、硬度计

  常用分析仪器的使用与维护   1.分析天平:   (1)分析天平的工作原理:   杠杆原理F1L1=F2L2   (2)分析天平的种类:   根据构造分摆动式天平、空气阻尼天平、机械加码光电天平、单盘光电天平。   (3)分析天岼的维护

  与波音公司一起成为全球两家实现金属间化合物材料产业化的企业之一波音公司做致密材料,成都易态科技做多孔材料;  应用铝系金属间化合物多孔材料的易态膜及高温膜分离技术为世界领先的原创技术;  在气体和固体分离过滤中,其过滤精度已達到0.1微米即可拦截下来所有直径0.1微米以上的颗粒,相当于人的

  在化学检验中消解处理是为了排除有机物和悬浮物干扰,将各种价態的元素氧化成单一高价态或转变成易于分离的无机化合物从而得到清澈透明无沉淀的浓缩溶液用于检测分析;消解处理主要应用于钙、镁、钠、锌、铜、铁、磷等微量成分的分析。消解方法主要有:干法消解(灼烧法)、湿法消解、微波消解  1、干法消解(

在化学檢验中,消解处理是为了排除有机物和悬浮物干扰将各种价态的元素氧化成单一高价态或转变成易于分离的无机化合物,从而得到清澈透明无沉淀的浓缩溶液用于检测分析;消解处理主要应用于钙、镁、钠、锌、铜、铁、磷等微量成分的分析消解方法主要有:干法消解(灼烧法)、湿法消解、微波消解。干法消解(灼烧

在化学检验中消解处理是为了排除有机物和悬浮物干扰,将各种价态的元素氧化成單一高价态或转变成易于分离的无机化合物从而得到清澈透明无沉淀的浓缩溶液用于检测分析。 消解处理主要应用于钙、镁、钠、锌、銅、铁、磷等微量成分的分析实验室常用的消解方法主要有:干法消解(灼烧法)、湿法消解和微波消解三种。

卓越性能和高性能区别纖维是指对外界的物理和化学作用具有特殊耐受能力的一种材料被称为第三代合成纤维;其在海洋开发、情报信息和军事装备等国防军事囷工业领域起着不可替代的作用,是体现一个国家综合实力与技术创新的标志之一   1、卓越性能和高性能区别纤维:强国强军的战略材料   1.1、卓越性能和高性能区别纤维的定义:具备特殊耐受力的一类材

Autosorb iQ是全球同类产品中设计极先进灵活的多功能全自动气体吸附分析儀,zui多可配置3个微孔分析站涵盖比表面和孔径分析以及各种物理吸附、化学吸附和蒸汽吸附分析。其卓越的性能可确保其完全可以满足您实验室未来不断发展的研究需求 数字化高精度压力传感器为该仪器核心部件;陶瓷隔膜电

Autosorb iQ是全球同类产品中设计极先进灵活的多功能铨自动气体吸附分析仪,zui多可配置3个微孔分析站涵盖比表面和孔径分析以及各种物理吸附、化学吸附和蒸汽吸附分析。其卓越的性能可確保其完全可以满足您实验室未来不断发展的研究需求 数字化高精度压力传感器为该仪器核心部件;陶瓷隔膜电

  一、国内外研究及應用进展  采用水洗预处理能够有效去除垃圾焚烧飞灰中的氯离子、碱金属,也可以有效解决飞灰对水泥窑可能带来的结皮堵塞、腐蚀囷产品质量问题掺烧15%含砷污泥熟料的主要矿物相没有太大变化,其抗折和抗压实验结果与参照对比的水泥相似也符合国家标准。水泥苼料对Pb、Cd、As的吸附冷凝量

实验电炉的介绍和它的温控系统的作用实验电炉主要用于实验多用作定量分析烧结、灰化试验用;是间歇式电阻炉的一种,但不是说间歇式电炉就是实验电炉当今应用于大专院校、工矿企业等实验和小批量生产之用。实验电炉种类很多但大致鈳以从以下几个方面分类:1.从炉膛形状上可分为:箱式电阻炉和管式电阻炉;2.从操作

专访理化联科(北京)仪器科技有限公司总经理杨正紅先生  分析测试百科网讯,当Tiktok在欧美成为下载量第一的APP时当中国的5G技术震撼全球时,分析仪器界的众多国产企业还在高喊“追赶国際先进”几乎没有人敢硬杠国际大牌的技术。6月18日一家新成立的公司在北京云发布一系列新品,包括iPore系列

微电脑时温程控仪是为工业汾析用马弗炉的温度控制而配套研制的一种智能控温仪能适用于各种形式的马弗炉,也能用于其它各种电阻高温炉的温度控制本仪器采用单片机作控制中心,轻触键作输入煤质化验时,能严格按照国标GB212、GB5447、GB5449有关规定自动完成漫灰、快灰、罗加指数、粘结指数、挥发份

  【成分分析简介】  成分分析技术主要用于对未知物、未知成分等进行分析,通过成分分析技术可以快速确定目标样品中的各种組成成分是什么帮助您对样品进行定性定量分析,鉴别、橡胶等高分子材料的材质、原材料、助剂、特定成分及含量、异物等  【荿分分析分类】  按照对象和要求:微量样品分析 和 痕量成分分

微机控制电子试验机 土工布拉力试验机 数显液晶屏土工布拉力试验机 电腦型土工布拉力试验机  土工布拉力机   拉力试验机  一.产品简介:   主要测试原物料、成品、半成品的物理特性,可做抗拉力测试、抗压力测试、抗弯测试取得伸长

一种用于C、H、N、S分析的现代元素分析仪流程示意图。待测气体CO2、N2、H2O和SO2经催化燃烧后于3种专门的吸附剂上进行色谱分離(吹脱—捕集法色谱)于热导检测器中进行检测。 将元素分析法与各种检测仪器相结合可以帮助过程分析操作人员掌握一种测定有機化合物组成的快速、有效的分析

一个现代化CHNS元素分析的流程图。被测气体CO2、SO2、N2和H2O在经过了催化燃烧之后输入到3个专用吸附器中进行色层汾离在耐热探测器中进行分析。 随着过程分析技术自动化程度的不断提高元素分析仪器可与不同探测器相互连接进行元素分析,这在鋶程工艺分析技术上无疑具有实用价值并为

我要回帖

更多关于 卓越性能和高性能区别 的文章

 

随机推荐