(作者:曹文龙、李维) 通常,建立一个网站要考虑硬件平台、操作系统、数据库、Web服务器、Web应用软件等的选择问题。另外,大多数Web服务器主要是为一种操作系统进行优化的,有的只能运行在一种操作系统上,所以选择Web服务器时,还需要同操作系统联系起来考虑。对于Web服务器的性能,一般要考虑以下几个方面。 响应能力:即Web服务器对多用户浏览信息的响应速度,响应速度越快,单位时间内就可以支持越多的访问量,用户点击的响应速度就越快。前面提到的多线程、多进程、负载均衡等技术都是要考虑的因素。 与后端服务器的集成:Web服务器通过与后端数据库及应用服务器连接,并将不同来源、不同格式的信息转换成统一的格式,然后向用户提供Web信息。例如前面介绍的对XML的支持。 管理的难易程度:即管理Web服务器是否简单易行。 开发难易程度:Web服务器既是Web应用的服务器,还往往是Web开发平台,它的集成开发能力、支持的开发语言的种类和开发的简易程度决定了其功能扩展的能力。 安全性:安全性需从前面提到的数据流的安全和网站内容的安全两方面进行考虑。 同平台的结合:平台包括操作系统平台和数据库平台,一般情况下,操作系统和数据库厂商同自己的Web服务器产品相互支持较好,有的甚至只支持自己的产品,如Microsoft的IIS只能在WinowsNT或Windows2000上运行。 保护原来的投资:在原有的应用中增加Internet的访问功能是一种更好的、容易实现的方案。例如,在一个公司中可能要更新一个客户服务系统,使它支持对存放在内部的Web服务器上的以GIF或JPEG格式编码的客户信件的存取;或者增加Web浏览器对内部网上存放的公司政策和雇员信息的存取,这将会通过增加已有的客户/服务器系统的能力来提高公司的办事效率,同时也会降低公司办公费用的开销。 以下为您介绍目前主要的Web服务器产品。 Microsoft IIS Microsoft的Web服务器产品为Internet Information Server (IIS),它提供ISAPI(Intranet Server API)作为扩展Web服务器功能的编程接口;同时,它还提供一个Internet数据库连接器(IDC),可以实现对数据库的查询和更新。Microsoft的另一个产品是Microsoft Visual InterDev,它是一个Web应用快速开发环境,可提供服务器和客户机端的编程工具、数据库工具和内容编辑工具,还提供集成化的站点管理功能。 由于具有与操作系统的亲和性并继承了Microsoft产品一贯的用户界面,IIS利用与Microsoft Proxy Server、Certificate Server、SiteServer、BackOffice以及其他应用程序紧密结合之便,成为功能强大、使用方便的Web服务器。通过围绕WindowsNT所做的优化,IIS具有很高的执行效率、出色的安全保密性、易于管理以及启动迅捷等特点。它既可用于集成现有的应用方式,也可用于实施Web应用系统。IIS变得普及的一个关键就是引入了ASP,这是Microsoft用于建立动态网页的技术。ASP支持多种脚本语言,包括JavaScript、PerlScript以及VBScript,使其可以很容易地访问其他服务器的软件组件。这一切是以COM为基础达到的,COM是Windows下组件协同的标准。而分布式COM,即DCOM,允许程序使用网络上的组件,就好像这些组件就在本地一样。 IIS还可以分享WindowsNT异步I/O能力,异步I/O使一个线程化的Web服务器在处理访问请求的同时可以处理文件或者网络I/O。另外,WindowsNT的负载均衡服务(WindowsNT Load Balancing Services)容易建立一个服务器集群,将负载合理地分布在各个服务器上,对建立大型的网站,也是个很好的方案。 Microsoft IIS是目前最流行的Web服务器产品之一,市场占有率在20%左右,很多著名的网站如Intel公司的Intel.com等都是建立在Microsoft IIS的平台上。 IBM WebSphere IBM WebSphere是一组专门为商务网站设计的套件,其中最主要是WebSphere CommerceSuite,它包含的工具可以创建和管理电子商务Web站点,另外还包括可在主机上安装电子商务站点的服务器软件和支付软件。作为集成化的电子商务软件平台,新的WebSphere通过与更高等级的工具的集成为用户提供更多、更实际的应用价值。 首先,WebSphere完全建立在行业标准之上,并提供了业界流行的资源配置。 其次,WebSphere的个性化开发功能不断加强,提高了客户应用的市场竞争力。Web Content Management和WebSphere Application Sever提供的过滤技术大大丰富了用户的个性化应用开发。 第三,WebSphere软件平台有效地拓展了无线应用的空间。WebSphere Everyplace Suite中的Web动态翻译界面借助灵活的代码转换技术为新的无线设备提供了支持,而WebSphere Transcoding Publisher则保证了Internet与无线设备之间的代码传输,使用户实现了通过掌上设备进行Web浏览的功能。 第四,WebSphere软件平台为用户提供了更出色的服务功能。用户不但可以监测所有的交易环节,而且可以创建一致的、可跟踪的流程。而交易流程中的每一步都可以在后台的数据库中得到反映。 第五,WebSphere软件平台还通过在新的电子商务系统与企业现有的系统实现无缝的、实时的连接,减少了企业的存货目录的层次,降低了企业的经营成本。 此外,WebSphere还提供了从桌面系统、电话、Internet到呼叫中心、Web服务器的语音服务。IBM WebSphere Voice 服务器使企业可以利用VoiceXML语言将语音应用程序扩展到移动通信网络。 从以下的例子中,我们可以发现WebSphere为用户带来的益处:PharmaCare是美国成长最快的医药管理顾问公司,采用IBM的Host Publisher和WebSphere Application Server, PharmaCare仅用三个月就建成了基于IBM DB2通用数据库的电子商务网站。该网站建成后,PharmaCare每年节省了十三万美元的运营成本,投资回报率达到了100%;这种客户还有很多,如全球著名的图书零售集团英格拉姆公司(Ingram Micro)、韩国三星电子等。 Netscape IPlanet WebServer/ Netscape Application Server 为了提高性能,Netscape在它的Web服务器中引进了应用程序编程接口NSAPI(Netscape Server API)。利用NSAPI,开发人员可以扩展服务器的功能,包括对外部数据库的访问。NSAPI可支持Windows NT、Solaris和HP/UX等平台。 IPlanet WebServer(Netscape Enterprise Server)以能在众多的不同平台上运行见长,主要功能有:带有客户端授权的SSL(Secure Sockets Layer)、Verity的集成式检索器、SNMP、出色的数据库联接功能及Web网站内容管理等。Netscape Server作为可靠的Web应用服务的另一个关键是Netscape Application Server(NAS)。NAS是一种编程环境,支持Java和C++对象,使得应用的伸缩性和容错能力强。NAS包含的工具允许用户建立多线程的应用,并且可以集成HTML,数据库查询,以及在NAServer上实现的商业逻辑。 在WindowsNT上的IPlanet WebServer同样是一个大型Web服务器,拥有广泛的第三方组件及工具支持,而且支持多种编程模型。比如,除了支持传统的HTML和CGI外,Netscape还支持服务器端的JavaScript,支持IIOP(Internet Inter Orb Protocol,一个用于与第三方的CORBA软件通讯的协议)。Netscape还提供了优秀的用户及安全性管理。 Netscape Directory Server提供了结构化的LDAP目录服务,借助LDAP目录服务,可以更有效更灵活地管理用户及资源。 IPlanet WebServer的市场占有率在6%左右,客户有著名的CNN.com(美国大选网站)Bital.com.mx等。 Oracle WebServer Oracle WebServer不仅仅是一个Web服务器产品,通过其高效率、多线程的可伸缩体系结构,Oracle WebServer能与Oracle数据库有效结合,并提供相应的开发环境,因而也是开发Web数据库应用的工具。 Oracle WebServer支持多种平台,与Oracle数据库产品配合使用能获得最佳性能,具有良好的扩展性和可移植性,良好的安全性,提供多种安全机制,如防火墙功能、账号管理等。 Oracle的电子商务平台是建立在NCA(网络计算机结构)之上的,它由许多面向商业的应用部件(Cartridge)组成,Oracle和它的合作伙伴提供了这个平台的关键部件,包括:Oracle's Universal Application Server、Oracle's Web Application Server、Oracle's Internet Commerce Server、Oracle's Payment Server、Oracle's Security Server、Oracle's InterOffice、CyberCash CashRegister Cartridge、VeriFone vPOS Cartridge、Taxware Worldtax system。其中,Oracle Web Applicatin Server是一个用在Internet上的可伸缩的Web服务器,它包含WRB(Web Request Broker)的下一个版本,并将为电子商务提供快速、有效、可靠和安全的事务处理和内容管理。Oracle Web Application Server的核心是WRB-Web请求代理,这种机制能够高速地调度各个部件、均衡各个部件的负载。它的WRB API(应用编程接口)提供了一个应用环境,这些API优于低层的第一代HTTP API。通过WRB API,应用程序开发人员能够建立定制的应用部件,编程语言可选用Java、PL/SQL、LiveHTML(SSL)、C/C++。所有服务器部件可以作为独立的进程运行,从而确保在任意一个第三方提供的部件发生错误时,不会影响业务其他部分的工作。因此,对于所有 用户而言,这个服务器的可靠性是无与伦比的。 在实际应用中,Oracle WebServer是同前面提到的Oracle公司的其它平台产品组合在一起,形成一个完整的电子商务平台。建立在Oracle电子商务平台之上的第三方解决方案的成功案例有:Lucent Technologies(www.lucentdirect.com)、Webshop(www.webshop.com.au)、Wehkamp(www.wehkamp.nl)、Stocksmart(www.storcksmart.com)等。 Apache Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web服务器软件之一。Apache取自"a patchy server"的读音,意思是充满补丁的服务器,因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。本来它只用于小型或试验Internet网络,后来逐步扩充到各种Unix系统中,尤其对Linux的支持相当完美。Apache有多种产品,可以支持SSL技术,支持多个虚拟主机。Apache是以进程为基础的结构,进程要比线程消耗更多的系统开支,不太适合于多处理器环境,因此,在一个Apache Web站点扩容时,通常是增加服务器或扩充群集节点而不是增加处理器。到目前为止Apache仍然是世界上用的最多的Web服务器,市场占有率达60%左右。世界上很多著名的网站如Amazon.com、Yahoo!、W3 Consortium、Financial Times等都是Apache的产物,它的成功之处主要在于它的源代码开放、有一支开放的开发队伍、支持跨平台的应用(可以运行在几乎所有的Unix、Windows、Linux系统平台上)以及它的可移植性等方面。 phpfans.net收集整理 |