基于Linux的集群系统(三)
2008-11-26 11:00:54 来源:WEB开发网图5-1所示的分布式服务器包含两个集群,它们分别是site 1 和site 2。每个集群都包含着一台域名服务器和若干台运行web服务器软件的实际的服务器。当用户敲入一个域名时,首先在Local DNS上对这个域名进行解析,找出与其对应的IP地址。如果Local DNS无法对这个域名进行解析,就将此域名发送到Authoritative DNS上,Authoritative DNS返回应该访问的服务器的IP地址,然后用户就可以访问指定的服务器上的内容了。
图5-1 Eddie集群结构图
Eddie主要包含两个软件包:HTTP网关和增强的DNS服务器。如图5-2所示,在每个站点上增加一个新的服务器(即前端机),在其上运行HTTP网关来接受外界发来的请求并且将请求调度到合适的后端机上执行,DNS服务器上运行增强的DNS服务器软件,通过该软件可以在多个地理上分散的网址上均衡负载。
Eddie主要有以下与众不同的特点:
提高了web服务器的吞吐量。通过提供强大的负载平衡能力,Eddie使用户可以充分利用分布式web服务器中的所有资源。主要在两个地方使用了负载平衡。首先后端机将本机上的负载信息如CPU负载、内存、磁盘延迟、运行队列数据以及页面错等信息发送给前端机,前端机根据负载轻重将外界请求发送到合适的服务器上。另外在增强DNS服务器软件中也提供了负载平衡的功能,前端机和后端机的综合负载信息都发送到Authoritative DNS服务器上,然后Local DNS可以根据各个Authoritative DNS上的负载的轻重来决定将域名解析的任务发送到哪一台Authoritative DNS上。这样就可以充分利用分布式服务器环境中的所有资源,增强了web服务器的吞吐量。
提供很好的服务质量。首先Eddie通过使用静态和动态负载平衡策略提高了web服务器的吞吐量,减少了用户请求的响应时间;其次,当用户发一个请求时,系统就要检查是否来自该用户的连接已经存在,如果存在,就将请求继续发送到上次对该请求提供服务的服务器上,这样就保证了用户对web访问的持续性。如果没有足够的资源,则将用户请求加入等待队列,并且告诉用户它的请求要等待一会儿才会被处理。
图5-2 Eddie功能结构图
更多精彩
赞助商链接