您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > WEB服务器实验报告
WEB服务器实验报告一、什么是WEB服务器WEB服务器也称为(WORLDWIDEWEB)服务器,主要功能是提供网上信息浏览服务。(1)应用层使用HTTP协议。(2)HTML文档格式。(3)浏览器统一资源定位器(URL)。的多媒体信息查询工具,是Internet上近年才发展起来的服务,也是发展最快和目前用的最广泛的服务。正是因为有了工具,才使得近年来Internet迅速发展,且用户数量飞速增长。1、(环球信息网)的缩写,也可以简称为Web,中文名字为“万维网”。它起源于1989年3月,由欧洲量子物理实验室CERN(theEuropeanLaboratoryforParticlePhysics)所发展出来的主从结构分布式超媒体系统。通过万维网,人们只要通过使用简单的方法,就可以很迅速方便地取得丰富的信息资料。由于用户在通过Web浏览器访问信息资源的过程中,无需再关心一些技术性的细节,而且界面非常友好,因而Web在Internet上一推出就受到了热烈的欢迎,走红全球,并迅速得到了爆炸性的发展。2、的发展和特点长期以来,人们只是通过传统的媒体(如电视、报纸、杂志和广播等)获得信息。但随着计算机网络的发展,人们想要获取信息,已不再满足于传统媒体那种单方面传输和获取的方式,而希望有一种主观的选择性。现在,网络上提供各种类别的数据库系统,如文献期刊、产业信息、气象信息、论文检索等等。由于计算机网络的发展,信息的获取变得非常及时、迅速和便捷。到了1993年,的技术有了突破性的进展,它解决了远程信息服务中的文字显示、数据连接以及图像传递的问题,使得上最为流行的信息传播方式。现在,Web服务器成为Internet上最大的计算机群,Web文档之多、链接的网络之广,令人难以想象。可以说,Web为Internet的普及迈出了开创性的一步,是近年来Internet上取得的最激动人心的成就。采用的是客户/服务器结构,其作用是整理和储存各种资源,并响应客户端软件的请求,把客户所需的资源传送到Windows95(或Windows98)、WindowsNT、UNIX或Linux等平台上。使用最多的webserver服务器软件有两个:微软的信息服务器(iis),和Apache。通俗的讲,Web服务器传送(serves)页面使浏览器可以浏览,然而应用程序服务器提供的是客户端应用程序可以调用(call)的方法(methods)。确切一点,你可以说:Web服务器专门处理HTTP请求(request),但是应用程序服务器是通过很多协议来为应用程序提供(serves)商业逻辑(businesslogic)。Web服务器可以解析(handles)HTTP协议。当Web服务器接收到一个HTTP请求(request),会返回一个HTTP响应(response),例如送回一个HTML页面。为了处理一个请求(request),Web服务器可以响应(response)一个静态页面或图片,进行页面跳转(redirect),或者把动态响应(dynamicresponse)的产生委托(delegate)给一些其它的程序例如CGI脚本,JSP(JavaServerPages)脚本,servlets,ASP(ActiveServerPages)脚本,服务器端(server-side)JavaScript,或者一些其它的服务器端(server-side)技术。无论它们(译者注:脚本)的目的如何,这些服务器端(server-side)的程序通常产生一个HTML的响应(response)来让浏览器可以浏览。要知道,Web服务器的代理模型(delegationmodel)非常简单。当一个请求(request)被送到Web服务器里来时,它只单纯的把请求(request)传递给可以很好的处理请求(request)的程序(译者注:服务器端脚本)。Web服务器仅仅提供一个可以执行服务器端(server-side)程序和返回(程序所产生的)响应(response)的环境,而不会超出职能范围。服务器端(server-side)程序通常具有事务处理(transactionprocessing),数据库连接(databaseconnectivity)和消息(messaging)等功能。虽然Web服务器不支持事务处理或数据库连接池,但它可以配置(employ)各种策略(strategies)来实现容错性(faulttolerance)和可扩展性(scalability),例如负载平衡(loadbalancing),缓冲(caching)。集群特征(clustering—features)经常被误认为仅仅是应用程序服务器专有的特征。应用程序服务器(TheApplicationServer)根据我们的定义,作为应用程序服务器,它通过各种协议,可以包括HTTP,把商业逻辑暴露给(expose)客户端应用程序。Web服务器主要是处理向浏览器发送HTML以供浏览,而应用程序服务器提供访问商业逻辑的途径以供客户端应用程序使用。应用程序使用此商业逻辑就象你调用对象的一个方法(或过程语言中的一个函数)一样。应用程序服务器的客户端(包含有图形用户界面(GUI)的)可能会运行在一台PC、一个Web服务器或者甚至是其它的应用程序服务器上。在应用程序服务器与其客户端之间来回穿梭(traveling)的信息不仅仅局限于简单的显示标记。相反,这种信息就是程序逻辑(programlogic)。正是由于这种逻辑取得了(takes)数据和方法调用(calls)的形式而不是静态HTML,所以客户端才可以随心所欲的使用这种被暴露的商业逻辑。在大多数情形下,应用程序服务器是通过组件(component)的应用程序接口(API)把商业逻辑暴露(expose)(给客户端应用程序)的,例如基于J2EE(Java2Platform,EnterpriseEdition)应用程序服务器的EJB(EnterpriseJavaBean)组件模型。此外,应用程序服务器可以管理自己的资源,例如看大门的工作(gate-keepingduties)包括安全(security),事务处理(transactionprocessing),资源池(resourcepooling),和消息(messaging)。就象Web服务器一样,应用程序服务器配置了多种可扩展(scalability)和容错(faulttolerance)技术。例如,设想一个在线商店(网站)提供实时定价(real-timepricing)和有效性(availability)信息。这个站点(site)很可能会提供一个表单(form)让你来选择产品。当你提交查询(query)后,网站会进行查找(lookup)并把结果内嵌在HTML页面中返回。网站可以有很多种方式来实现这种功能。我要介绍一个不使用应用程序服务器的情景和一个使用应用程序服务器的情景。观察一下这两中情景的不同会有助于你了解应用程序服务器的功能。情景1:不带应用程序服务器的Web服务器在此种情景下,一个Web服务器独立提供在线商店的功能。Web服务器获得你的请求(request),然后发送给服务器端(server-side)可以处理请求(request)的程序。此程序从数据库或文本文件(flatfile,译者注:flatfile是指没有特殊格式的非二进制的文件,如properties和XML文件等)中查找定价信息。一旦找到,服务器端(server-side)程序把结果信息表示成(formulate)HTML形式,最后Web服务器把会它发送到你的Web浏览器。简而言之,Web服务器只是简单的通过响应(response)HTML页面来处理HTTP请求(request)。情景2:带应用程序服务器的Web服务器情景2和情景1相同的是Web服务器还是把响应(response)的产生委托(delegates)给脚本(译者注:服务器端(server-side)程序)。然而,你可以把查找定价的商业逻辑(businesslogic)放到应用程序服务器上。由于这种变化,此脚本只是简单的调用应用程序服务器的查找服务(lookupservice),而不是已经知道如何查找数据然后表示为(formulate)一个响应(response)。这时当该脚本程序产生HTML响应(response)时就可以使用该服务的返回结果了。在此情景中,应用程序服务器提供(serves)了用于查询产品的定价信息的商业逻辑。(服务器的)这种功能(functionality)没有指出有关显示和客户端如何使用此信息的细节,相反客户端和应用程序服务器只是来回传送数据。当有客户端调用应用程序服务器的查找服务(lookupservice)时,此服务只是简单的查找并返回结果给客户端。通过从响应产生(response-generating)HTML的代码中分离出来,在应用程序之中该定价(查找)逻辑的可重用性更强了。其他的客户端,例如收款机,也可以调用同样的服务(service)来作为一个店员给客户结帐。相反,在情景1中的定价查找服务是不可重用的因为信息内嵌在HTML页中了。总而言之,在情景2的模型中,在Web服务器通过回应HTML页面来处理HTTP请求(request),而应用程序服务器则是通过处理定价和有效性(availability)请求(request)来提供应用程序逻辑的。警告(Caveats)现在,XMLWebServices已经使应用程序服务器和Web服务器的界线混淆了。通过传送一个XML有效载荷(payload)给服务器,Web服务器现在可以处理数据和响应(response)的能力与以前的应用程序服务器同样多了。另外,现在大多数应用程序服务器也包含了Web服务器,这就意味着可以把Web服务器当作是应用程序服务器的一个子集(subset)。虽然应用程序服务器包含了Web服务器的功能,但是开发者很少把应用程序服务器部署(deploy)成这种功能(capacity)(译者注:这种功能是指既有应用程序服务器的功能又有Web服务器的功能)。相反,如果需要,他们通常会把Web服务器独立配置,和应用程序服务器一前一后。这种功能的分离有助于提高性能(简单的Web请求(request)就不会影响应用程序服务器了),分开配置(专门的Web服务器,集群(clustering)等等),而且给最佳产品的选取留有余地。二、适用的web服务器小的应用程序可以直接记住,系统地、严密地加以考虑,以证明它们的安全性或可伸缩性。小型Web服务器包括:CheetahServer,用不到一千行的C代码编写而成。DustMote,一个非常小的Web服务器,用一个大约3000字节的Tcl源文件实现。fnord,大小取决于平台和配置,不超过20K。虽然很小,但是它支持虚拟主机、CGI和keep-alive。ihttpd,使用不到800行的C代码,包括CGI,并通过inetd提供页面。im-httpd,非常小的服务器——只有大约7KB,链接到glibc。而且它也非常快。mattows,支持CGI,只有600行C代码。Scrinchy,虽然很小,不到30KB,但是支持多种脚本编制语言,包括一种特殊用途的、基于栈的Sy脚本语言。ZWS演示了一个即使是使用500多行带足够注释的zsh(!)编写的应用程序——在这里是一个HTTP0.9+服务器——也可以有多强大。体积小并不妨碍这些服务器被正式使用。例如,fnord可以处理数千个同时进行的连接。也许轻量级作为一个类别最令人印象深刻的成就是高性能服务器:cghttpd是一个小型Web服务器,它被理解为使用2.6系列内核中可用的异步功能的一个试验品。darkhttpd是一个快速的、单线程的HTTP/1.1服务器。Gatling是为高性能设计的。它的特性包括FTP、IP
本文标题:WEB服务器实验报告
链接地址:https://www.777doc.com/doc-5629829 .html