让Internet应用永不停顿

来源 :互联网世界 | 被引量 : 0次 | 上传用户:lrdw149
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读



  随着Internet应用的发展和日趋成熟,其系统的可扩展性和高可用性变得日趋重要。经过与客户、ISV、Web设计商的长期合作,以及在试验室的广泛测试,康柏公司为建立高伸缩性、高可用性的Internet应用提出了一个先进的体系结构——分布式Internet服务器阵列(Distributed Internet Server Array,DISA)体系结构,此体系结构摄取了常规的系统可伸缩性/高可用性的技术优势,并同时将这些技术付诸于新的方式以适应Internet应用。
  
  核心应用堆栈
  
  康柏DISA体系结构的定义是通过一组核心组件而组成,同时为达到其更好的价值体现而提出了一些关键的指导建议。
  典型DISA体系结构包括四层核心应用组件和外加两个服务于整个体系结构的组件。核心应用堆栈组件是由:客户层;流量负载均衡层;应用服务器层;数据资源存储层四层组成。两个服务于全局的组件则是对整个体系结构的安全保证和综合管理。
  * 客户层
  客户层通常由运行Web浏览器的客户机(运行Win95和Win98)组成。大企业用户,或遍布各地的地方公司使用这类客户机通过在公共Internet网上建立的VPN连接到基于DISA体系结构的企业Web系统的门户站点。利用VPN的优势在于,用户可以方便、安全地通过Internet网络连接远程办公室、业务伙伴和移动办公者等,同时极大地减少传统的租用线路的通信开销。企业客户使用者可通过Web浏览器通过HTTP协议发请求给DISA体系结构中的Web应用服务器,由Web应用服务器处理接收到的请求。此外,此DISA体系结构还适用于使用其他Internet应用的企业用户如FTP、Internet电子邮件等的接入服务,并支持非浏览器的客户端的访问。
  * 流量负载均衡层
  流量负载均衡层通过虚拟主机方式,展现给客户端是一个单一系统映象,该层设在客户端与应用层之间,使应用服务层的多台服务器对Client的请求呈现出单一的虚拟IP地址映象,它负责将客户请求均衡分配到多台应用服务器,发挥多台服务器共同处理的能力。其功能是提供可用性、可扩展性,并实现对应用服务器阵列的管理。有各种方式可达到负载均衡,包括RoundrobinDNS和各种智能负载均衡技术。
  考虑到实际业务需求,以及对将要访问此Web站点的预估,此Web站点用户预计可达上百万。由于需要处理接入如此庞大的客户群,单台Web应用服务器很难承担,因此应该由多台服务器组成的服务器阵列共同处理,流量负载均衡层在客户层与应用服务层之间,将客户的访问请求动态均衡的分配到服务器阵列中,由多台系统共同处理来自客户的请求,有效地发挥多机系统的性能优势。
  另外,智能流量负载均衡器,还具有基于URL的内容分布流量的能力。其好处在于允许站点管理员分布高计算强度的作业(如CGI)到高处理能力的服务器池中,将需要高I/O能力的作业,如静态HTML请求送至另外低处理能力的服务器池,避免高计算强度的作业减慢整个站点的处理速度。
  智能流量负载均衡器可自动发现在应用服务器阵列中失败的服务器,并继续发送请求至其他的服务器,而且还支持故障切换配置。因此为了防止在DISA系统的负载均衡层出现单点故障,建议采用故障热切换配置,如果主运作机故障,备份机可以很快接管所有作业。流量负载均衡层为DISA体系结构的高可用、高性能和线性可扩展性提供了基础。
  流量负载均衡技术当前有几种模式,包括安装在常规服务器的软件(如Resonate、BrightTiger、WLBS),网络产品(如Cisco、F5Labs、RND)以及交换机(Holontech、Alteon、ArrowPoint)。
  * 应用服务器层
  应用服务器层将执行Internet应用的主要工作,一个简单的Internet应用是一个最基本的Web服务器,它主要服务于静态HTML网页,再点缀一些简单的CGI脚本来处理HTML格式输入(例如,在电子邮件的名单上注册)。
  更为复杂的Internet应用,则使用先进的CGI脚本,如运行在应用服务器上的Allaire Cold Fusion、Microsoft Active Server Pages(ASPs)或Java Servlets等,这些应用负责从后台服务器的数据库调入数据资源,同时还支持从遗留系统和企业的其他应用中调入信息的工作。
  对于很复杂的应用,可以使用综合应用服务器套件,这些应用套件分割Web服务和应用逻辑到分别的物理服务器上,这类套件包括:HAHTSoftware的HAHTsite,NetDynamic和Netscape Application Server,BEAWebLogic。这些套件典型地包括运行ISAPI或NSAPI的Web服务器,Web服务器与一个应用逻辑服务器池通讯,应用逻辑服务器将调入和处理来自几个不同数据库、遗留系统、企业应用的数据,然后返回格式好的结果给Web服务器。(如下图)


  * 数据资源存储层
  数据资源存储层可以是一个或多个应用数据的仓库,并提供对存放应用数据资源的其他系统的连接。许多Internet应用中包含不同的数据资源类型,数据资源可能包括文件型的应用内容,如HTML、images、scripes脚本、CGI/Java/COM可执行程序,还有数据库,以及企业的其他应用。这些数据资源有可能存放在网络文件系统(NFS)、数据库或其他应用数据库。
  这里往往对基于文件系统的资源存储存在误解,像诸如HTML、images文件等必须存储在应用服务器的本地盘,此方式的问题在于,在保持复制数据的同步时将面临很大问题,特别是在一个成功的Web站点,当其数据资源非常庞大且需要经常更新,此问题就显现的更为突出。虽然有些厂商已提供文件复制方案,但大多数可行方案通常采用集中式文件系统资源,将其存储在能够提供足够I/O性能和具有高可用的网络文件服务器上。数据资源的集中化大大降低了实施和管理大型和多服务器系统的复杂度。
  对于大型企业,我们建议采用数据资源集中存放的方式,这样可大大简化和方便数据管理,尤其是在多Web服务器环境下,数据资源集中减少了很多文件复制的工作。由于将数据统一存放在中心数据库,中心数据库的安全可靠就变得尤为重要,而为了保证中心数据的安全可靠,康柏公司可以提供高安全机制的Cluster高可用性平台,运行并行数据库保证数据的安全,并同时带来性能的提高。另外,在Web应用服务器层和数据库服务器层之间使用中间件软件,来提高数据库处理的性能。此外,在Cluster环境下,可以实现应用的动态均衡负载。
  作为更高级别的数据可靠性的考虑,康柏还可以为用户提供基于Tru64 UNIX、WindwosNT的不同级别的容灾解决方案。
  
  安全保证
  
  为了实施在DISA系统上的高可用性,可扩展性的关键应用,需要相应的方法提供安全保证。确保信息的隐秘性,拦截攻击性服务的攻击,并保护各种需要服务于电子商务和连接到Internet的外部应用的数据,避免窃取行为发生。这些涉及安全保障的许多方面同样也适用于企业内部应用网。
  下图列举出安全保障技术如何应用在DISA核心应用堆栈层各层之间,图中所列,包括SSL加密机制、防火墙、VPN、OS加固技术等应用于各个层面。


  一些智能的负载均衡器可为DISA系统提供基础级的安全保护。基于路由的负载均衡器可以阻碍所有通过TCP/IP的连接,可保护应用服务器免受几种最为普通的攻击性服务的攻击。
  
  管理和维护
  
  在DISA体系结构中的第二个全局组件是对整个体系结构的管理和维护。由于DISA体系结构中包含许多不同种类的系统,为支持一个复杂的应用能共同协作,就需要一个完备的方法来管理所有的系统,以保证所有系统能正常在线运作,并达到最佳的性能峰值。
  在DISA体系结构中系统管理最为重要的因素包括:
  * 硬件/操作系统监测:监测流量负载均衡器、磁盘、CPU、内存、网卡、操作系统等的状态;
  * 远程诊断/维护管理:远程诊断服务器故障和远程控制和管理一个服务器;
  * 服务器恢复:自动重新启动失败的服务器;
  * 应用服务监测报警:确定是否一个应用服务(Web服务器)或数据资源(数据库)操作正常;
  * 性能测试:测试服务器和站点的性能。
  在每一层康柏都可以提供工具帮助用户管理所有的系统(包括康柏和其他如HP、CA、Tivoli等厂商的产品)。
  
  指导方针
  
  应用服务器层——建议采用多台Web应用服务器代替单台服务器,当结合进智能的负载均衡技术,多个应用服务器比单个服务器提供更好的可扩展性和可用性,并配有更多的处理器和内存,增强了处理能力。
  集中式数据资源存储层——基于实施和应用需求,集中化数据资源存储应建立在高配置、高可用的服务器上,替代将数据资源复制在应用服务器上。如果采用故障切换技术,中心数据资源存储服务器可以简化管理,快速更新应用资源的作业。集中化应用资源还可简化容量扩充和故障恢复,以及备份和恢复管理。
  冗余配置——在任何有可能发生单点故障的地方,如负载均衡器、防火墙、网络设备,均建议采用冗余配置和故障切换配置。智能负载均衡技术为冗余应用服务器提供故障切换的能力。集群数据库和网络存储确保数据资源的可用时间,冗余网卡、电源、风扇是加强数据资源服务器可用时间的明智选择。通过多个自引导的冗余网络连接和不间断电源也不失为良好的建议。
  用户状态维护——建立的应用要使用户的状态信息不是在单一应用服务器进行维护,维护用户状态在单一应用服务器的弱点在于,不能得到某些负载均衡算法的功能。
  
  采用DISA体系结构构建Web应用的优势
  
  采用DISA体系结构的优势在于它的可伸缩性、可用性、性能/价格比、兼容性和集成能力。
  * 线性可伸缩性
  DISA体系结构允许管理员快速容易地加入应用处理能力来控制负载增长。小型DISA系统可开始于单一的应用服务器,随着负载的增长可扩展至20甚至30台应用服务器共同处理。测试显示增加应用服务器至DISA体系结构可提供线性伸缩性,大多数情况下无需重新设计系统或更换设备就可解决瓶颈问题。
  * 高可用性
  DISA系统可使用冗余配置以最小化单点故障的可能。一个好的DISA系统实施方案可提供滚动升级和其他计划内的系统维护而无需将系统脱机。此外,DISA系统还可提供由于硬件或软件故障而偶然发生的非计划内维护。
  * 卓越的性能价格比
  DISA体系结构允许Internet应用设计者获得由工业标准平台以及开放式64位Alpha平台带来的所有性能价格比优势,而无需对其可扩展性和可用性进行折中。一个好的DISA系统实施方案可带来更大的扩展性、更高的性能、更高的可靠性,远远优于专用系统方案。
  * 融合主流的Internet应用
  DISA系统结构很容易融合覆盖主流Internet应用如CGIs、ASPs和Allaire Cold Fusion等。在特定的情形下可能需要对其作细微的调整,但DISA体系结构通常不需要主要应用软件更改,在众多情形下,移至DISA体系结构只需简单将负载均衡器和集中化的应用资源(数据库、HTML内容)实施在集群的文件服务器/数据库服务器上。
  * 混合环境集成
  康柏依据多年经验,研究成果和市场调查数据显示,企业在实施Internet应用来处理其关键业务时的另一需求是异类环境的集成,在大企业这种需求显得更为突出,企业需要实现内部各地方、各部门、银行、税务局等机构的连接和数据交换,在这些机构中现存的计算机环境多种多样,来自不同厂商的硬件平台以及不同的操作系统(OpenVMS、UNIX、LUNIX、WindowsNT、AIX,其他)使得在如此复杂的混合环境中,集成显得尤为重要和突出。凭借多年来积累的多厂商集成经验,康柏有能力提供最优的集成解决方案,确保异类机间的平滑集成,降低用户集成实施风险。
其他文献