Linux WEB服务器集群在电子商务中的应用

时间:2009-02-22   来源:   网友评论:0   人气: 287 作者:

摘要] 本文针对电子商务应用的特殊要求,提出了Linux集群技术在电子商务Web服务器应用领域的一种解决方案。它成本较低,性能较单机服务器优越,能更好地为电子商务提供Web服务。
  [关键词] 电子商务Web服务Linux集群
  随着Internet 和电子商务的飞速发展,人们对电子商务网络服务器访问需求急剧增加,网络服务器的负载越来越大,采用服务器集群[1]已成为提高网络服务性能的有效途径。Web 服务器集群就是基于集群体系结构的Web 服务器,它通常由一台前台调度器(FE)和若干台后台服务器(BE)组成,彼此之间通过高性能网络或局域网互联。整个集群共享一个虚拟IP 地址,集群中只有FE对客户端可见,集群对客户端看来就像是一台高性能的服务器。所有的客户请求首先到达FE,由FE 将请求根据一定的负载平衡算法分发给BE。BE将处理结果直接或间接返回给客户端,这样使得服务器处理请求能力成倍增长,Web集群应用尤其适合访问业务量大的商业服务器。
  
  一、Linux Web集群的体系结构
  
  如图1所示,一个Linux Web集群系统通常由一台FE和若干台BE组成,FE和BE通过局域网互联。整个集群共享一个虚拟IP 地址(Virtual IP Address),集群中只有FE对客户端可见,提高了集群安全性。FE除了要响应Web服务请求外,还要充当负载平衡器角色,即根据调度算法分配工作给后台的BE们。商业服务器对高可靠性要求高,为了屏蔽FE的失效,需要为它建立一个备份机(Backup)。FE和Backup通过传送诸如“我活着”这样的信息来监测对方的运行状况。当备份机不能在一定的时间内收到这样的信息时,它就激活相应程序,接管FE继续提供服务;当Backup又从FE那收到“我活着”这样的信息时,它就使该程序无效,从而释放IP地址,这样FE就可以再次进行集群管理了。

     今日更新:Linux Web集群在电子商务中的应用
                         图1Linux web集群体系结构图
  集群中所有角色的计算机都是运行着Linux的普通PC机,大大节省了硬件成本。集群的使用大大提高了电子商务系统的吞吐量和性能,并且双机服务机制保证了高可靠性。
  
  二、前台调度器(FE)的实现技术
  
  优良的调度技术是发挥集群性能的关键,在调度器的实现技术中,IP负载均衡技术是效率最高的。大多数商品化的IP负载均衡调度器产品都是使用VS/NAT技术(Virtual Server via Network Address Translation),如Cisco的LocalDirector,这种方法通过网络地址转换(Network Address Translation)将一组服务器构成一个高性能的、高可用的虚拟服务器。即通过网络地址转换,调度器重写请求报文的目标地址,根据预设的调度算法,将请求分派给后台的真实服务器;真实服务器的响应报文通过调度器时,报文的源地址被重写,再返回给客户,完成整个负载调度过程。

 

  针对电子商务Web服务的自身特点,调度算法采用的是基于内容的调度。
  在基于IP负载调度技术中,当一个TCP连接的初始SYN报文到达时,调度器就选择一台服务器,将报文转发给它。此后通过查发报文的IP和TCP报文头地址,保证此连接的后继报文被转发到该服务器。这样就要求后台服务器组提供相同的服务,不管请求被发送到哪一台服务器,返回结果都是一样的。但是,在电子商务应用中后台服务器功能不一,有的提供HTML文档,有的提供CGI、图片等,这就需要基于内容的调度(Content-Based Scheduling)。有研究表明基于内容的调度能较大幅度的提高Web服务器集群的性能,减少资源浪费。这是因为:相同页面的请求被发送到同一服务器,可以提高单台服务器的Cache命中率。电子商务WEB访问流中存在局部性,将相同类型的请求发送到同一台服务器,使得每台服务器收到的请求具有更好的相似性,可进一步提高单台服务器的Cache命中率。


 

文章评论