BBS水木清华站∶精华区

发信人: xuzq (奔腾), 信区: Linux        
标  题: Rat留的家庭作业,有关集群技术! 
发信站: BBS 水木清华站 (Mon Jan 17 18:09:04 2000) 
 
我对于集群技术仅仅有一些粗浅的了解,而且偏重于 
Web Server的集群应用工作,讲不出集群技术的全面 
动向.我对这个问题比较感兴趣,希望能和诸位网友 
交流.有很长时间没有实际接触了,恐怕有点跟不 
上形势.上回网友问过我一次,就把这些东西概括 
一下. 
 
注:有关集群的讨论都是在网络带宽足够的条件下进行 
的,如果系统性能的下降是由于网络带宽不足引起的, 
增加带宽是提高系统性能最有效的方法. 
 
集群技术给我的感觉有点象"人海战术",或者说 
"人多力量大".类似于分布式处理系统,我说不出 
二者有什么区别,或者根本没有区别.分布式计算 
现在有比较成熟的环境可以使用,如PVM,MPI等等. 
这些分布式,集群之类的名词,说的东西本质上都是 
一样的. 
 
拿Web Server 
的例子来讲可能会比较好理解,大家知道Web Server 
为了提高对客户的响应速度,多采取preforked  
concurrent server(预先派生的并发服务)工作方式 
即对于每一个客户请求,都会有一个Server的进程来 
处理.如果同时访问Server的客户数量很多,会造成 
主机上同时存在很多进程,进程间彼此争夺系统资源 
导致Server响应速度下降(不知道现在Web Server 
有没有新的工作模式了).现在可以有两种途径解决 
这个问题,一是提高单机系统的性能,限于资金方面 
的原因,恐怕不是我等能够力所能及的.二是使用多台 
计算机来分担整个系统的负载,这样就有可能利用多台 
廉价的计算机来达到甚至超过昂贵的超级计算机的 
能力.这就是集群技术存在和发展的基础. 
 
Web Server可能是比较早利用集群技术的应用.因为 
整个系统的负载可以很容易地分成彼此独立的部分. 
如果我们拥有数台完全相同的Web Server,实际上客户 
访问其中任何一台,都没有区别.这样每台计算机承担 
的负载都在它的处理能力之内,不会引起响应速度 
的显著下降,从而整个系统在大的客户访问量时,不会 
出现单机系统响应速度显著下降的现象. 
 
将集群技术应用于Web Server,可以有两种方式,最简单 
也是最常采用的是Round Robin DNS.这是DNS提供的一种 
简单的负载分配机制,拿来给Web Server用再合适不过了. 
假定我们的集群系统拥有五台机器,网站内容相同,IP不同. 
这五个IP对应同一个域名.当客户用域名访问网站时,DNS 
对每个域名解析请求返回不同的IP地址,这样客户的访问 
请求就被分散到不同的机器上了. 
 
第二种方式就是建立网关,负责负载分配的工作.真正的Web  
Server躲在网关后面.现在网关的实现有很多方法,有硬件, 
有软件,在网络不同层次上都有实现.现在比较普遍的是利用 
Linux Virtual Server(LVS)在IP层利用封装技术作个地址转换. 
客户的TCP连接到达网关后,网关利用负载分配算法确定集 
群中空闲的机器,网关将客户的请求直接转给Web Server来处 
理,Web Server可以将回应直接传给客户.基于地址转换(NAT) 
网关,用户的每一个请求都要经过网关,但是回应可以由Web 
Server直接返回给客户.客户,网关和Web Server之间形成一个 
封闭的环.以前我还利用HTTP请求的重定向方法做过一种网 
关,因为当时我不知道NAT的方法.不利用NAT的话,TCP连接 
是无法从网关无缝地转移到Web Server上去的(不知道现在 
是不是有了新方法?).网关接收客户的HTTP请求后,利用负载 
均衡算法,得到集群中空闲计算机的地址,然后构造一个重定向 
的地址,返回给客户,客户利用这个地址重新连接Web Server. 
这两种不同实现方式的网关各有优缺点.利用NAT方式,客户仅 
连接一次,就可以获得所需要的页面内容,但是每次HTTP请求都要 
经过网关中转.HTTP请求重定向的方式,客户必须连接两次才能 
得到所需页面,但是之后的请求都由Web Server来处理,和网关 
就没有关系了. 
 
我觉得集群技术的难点应该是负载分配算法,因为现在对计算机 
系统的负载还没有一个统一的指标,一般都是以CPU,磁盘,内存的 
利用率,活动进程数目等数据来衡量,我用过loadavg这个数据,取得 
容易,还在同构环境下还凑合,但是一直不满意比较,特别在异构的 
集群环境下,难以确定究竟哪台计算机的负载轻. 
 
我对集群技术的了解差不多就这些了,不知道这个作业rat是否满意? 
 
 
 
 
 
 
 
 
-- 
※ 来源:·BBS 水木清华站 smth.org·[FROM: 210.73.64.229] 

BBS水木清华站∶精华区