以文本方式查看主题 - 搭建论坛 (http://bbs.diylsoft.com:8118/starforum/index.asp) -- 读者文摘 (http://bbs.diylsoft.com:8118/starforum/list.asp?boardid=10) ---- 【网络知识】WEB服务器“基本概念”及其发展 (http://bbs.diylsoft.com:8118/starforum/dispbbs.asp?boardid=10&id=30176) |
-- 作者:heying -- 发布时间:2010-5-1 9:26:57 -- 【网络知识】WEB服务器“基本概念”及其发展 一、什么是WEB服务器
WEB服务器也称为WWW(WORLD WIDE WEB)服务器,主要功能是提供网上信息浏览服务。 (2)HTML文档格式。 (3)浏览器统一资源定位器(URL)。 WWW代表万维网的意思 WWW 是 Internet 的多媒体信息查询工具,是 Internet 上近年才发展起来的服务,也是发展最快和目前用的最广泛的服务。正是因为有了WWW工具,才使得近年来 Internet 迅速发展,且用户数量飞速增长。 1、WWW简介 WWW 是 World Wide Web (环球信息网)的缩写,也可以简称为 Web,中文名字为“万维网”。它起源于1989年3月,由欧洲量子物理实验室 CERN(the European Laboratory for Particle Physics)所发展出来的主从结构分布式超媒体系统。通过万维网,人们只要通过使用简单的方法,就可以很迅速方便地取得丰富的信息资料。 由于用户在通过 Web 浏览器访问信息资源的过程中,无需再关心一些技术性的细节,而且界面非常友好,因而 Web 在Internet 上一推出就受到了热烈的欢迎,走红全球,并迅速得到了爆炸性的发展。 2、WWW的发展和特点 长期以来,人们只是通过传统的媒体(如电视、报纸、杂志和广播等)获得信息。但随着计算机网络的发展,人们想要获取信息,已不再满足于传统媒体那种单方面传输和获取的方式,而希望有一种主观的选择性。现在,网络上提供各种类别的数据库系统,如文献期刊、产业信息、气象信息、论文检索等等。由于计算机网络的发展,信息的获取变得非常及时、迅速和便捷。 到了1993年,WWW 的技术有了突破性的进展,它解决了远程信息服务中的文字显示、数据连接以及图像传递的问题,使得 WWW 成为 Internet 上最为流行的信息传播方式。 现在,Web 服务器成为 Internet 上最大的计算机群,Web 文档之多、链接的网络之广,令人难以想象。可以说,Web 为 Internet 的普及迈出了开创性的一步,是近年来 Internet 上取得的最激动人心的成就。 WWW 采用的是浏览器/服务器结构,其作用是整理和储存各种WWW资源,并响应客户端软件的请求,把客户所需的资源传送到 Windows 95(或Windows98)、Windows NT、UNIX 或 Linux 等平台上。 使用最多的 web server 服务器软件 有两个:微软的信息服务器(iis),和Apache。 通俗的讲,Web服务器传送(serves)页面使浏览器可以浏览,然而应用程序服务器提供的是客户端应用程序可以调用(call)的方法(methods)。确切一点,你可以说:Web服务器专门处理HTTP请求(request),但是应用程序服务器是通过很多协议来为应用程序提供(serves)商业逻辑(business logic)。 Web服务器可以解析(handles)HTTP协议。当Web服务器接收到一个HTTP请求(request),会返回一个HTTP响应(response),例如送回一个HTML页面。为了处理一个请求(request),Web服务器可以响应(response)一个静态页面或图片,进行页面跳转(redirect),或者把动态响应(dynamic response)的产生委托(delegate)给一些其它的程序例如CGI脚本,JSP(JavaServer Pages)脚本,servlets,ASP(Active Server Pages)脚本,服务器端(server-side)JavaScript,或者一些其它的服务器端(server-side)技术。无论它们(译者注:脚本)的目的如何,这些服务器端(server-side)的程序通常产生一个HTML的响应(response)来让浏览器可以浏览。 要知道,Web服务器的代理模型(delegation model)非常简单。当一个请求(request)被送到Web服务器里来时,它只单纯的把请求(request)传递给可以很好的处理请求(request)的程序(译者注:服务器端脚本)。Web服务器仅仅提供一个可以执行服务器端(server-side)程序和返回(程序所产生的)响应(response)的环境,而不会超出职能范围。服务器端(server-side)程序通常具有事务处理(transaction processing),数据库连接(database connectivity)和消息(messaging)等功能。 虽然Web服务器不支持事务处理或数据库连接池,但它可以配置(employ)各种策略(strategies)来实现容错性(fault tolerance)和可扩展性(scalability),例如负载平衡(load balancing),缓冲(caching)。集群特征(clustering—features)经常被误认为仅仅是应用程序服务器专有的特征。 应用程序服务器(The Application Server) 根据我们的定义,作为应用程序服务器,它通过各种协议,可以包括HTTP,把商业逻辑暴露给(expose)客户端应用程序。Web服务器主要是处理向浏览器发送HTML以供浏览,而应用程序服务器提供访问商业逻辑的途径以供客户端应用程序使用。应用程序使用此商业逻辑就象你调用对象的一个方法(或过程语言中的一个函数)一样。 应用程序服务器的客户端(包含有图形用户界面(GUI)的)可能会运行在一台PC、一个Web服务器或者甚至是其它的应用程序服务器上。在应用程序服务器与其客户端之间来回穿梭(traveling)的信息不仅仅局限于简单的显示标记。相反,这种信息就是程序逻辑(program logic)。 正是由于这种逻辑取得了(takes)数据和方法调用(calls)的形式而不是静态HTML,所以客户端才可以随心所欲的使用这种被暴露的商业逻辑。 在大多数情形下,应用程序服务器是通过组件(component)的应用程序接口(API)把商业逻辑暴露(expose)(给客户端应用程序)的,例如基于J2EE(Java 2 Platform, Enterprise Edition)应用程序服务器的EJB(Enterprise JavaBean)组件模型。此外,应用程序服务器可以管理自己的资源,例如看大门的工作(gate-keeping duties)包括安全(security),事务处理(transaction processing),资源池(resource pooling), 和消息(messaging)。就象Web服务器一样,应用程序服务器配置了多种可扩展(scalability)和容错(fault tolerance)技术。 例如,设想一个在线商店(网站)提供实时定价(real-time pricing)和有效性(availability)信息。这个站点(site)很可能会提供一个表单(form)让你来选择产品。当你提交查询(query)后,网站会进行查找(lookup)并把结果内嵌在HTML页面中返回。网站可以有很多种方式来实现这种功能。我要介绍一个不使用应用程序服务器的情景和一个使用应用程序服务器的情景。观察一下这两中情景的不同会有助于你了解应用程序服务器的功能。 情景1:不带应用程序服务器的Web服务器 在此种情景下,一个Web服务器独立提供在线商店的功能。Web服务器获得你的请求(request),然后发送给服务器端(server-side)可以处理请求(request)的程序。此程序从数据库或文本文件(flat file,译者注:flat file是指没有特殊格式的非二进制的文件,如properties和XML文件等)中查找定价信息。一旦找到,服务器端(server-side)程序把结果信息表示成(formulate)HTML形式,最后Web服务器把会它发送到你的Web浏览器。 简而言之,Web服务器只是简单的通过响应(response)HTML页面来处理HTTP请求(request)。 情景2:带应用程序服务器的Web服务器 情景2和情景1相同的是Web服务器还是把响应(response)的产生委托(delegates)给脚本(译者注:服务器端(server-side)程序)。然而,你可以把查找定价的商业逻辑(business logic)放到应用程序服务器上。由于这种变化,此脚本只是简单的调用应用程序服务器的查找服务(lookup service),而不是已经知道如何查找数据然后表示为(formulate)一个响应(response)。 这时当该脚本程序产生HTML响应(response)时就可以使用该服务的返回结果了。 在此情景中,应用程序服务器提供(serves)了用于查询产品的定价信息的商业逻辑。(服务器的)这种功能(functionality)没有指出有关显示和客户端如何使用此信息的细节,相反客户端和应用程序服务器只是来回传送数据。当有客户端调用应用程序服务器的查找服务(lookup service)时,此服务只是简单的查找并返回结果给客户端。 通过从响应产生(response-generating)HTML的代码中分离出来,在应用程序之中该定价(查找)逻辑的可重用性更强了。其他的客户端,例如收款机,也可以调用同样的服务(service)来作为一个店员给客户结帐。相反,在情景1中的定价查找服务是不可重用的因为信息内嵌在HTML页中了。 总而言之,在情景2的模型中,在Web服务器通过回应HTML页面来处理HTTP请求(request),而应用程序服务器则是通过处理定价和有效性(availability)请求(request)来提供应用程序逻辑的。 警告(Caveats) 现在,XML Web Services已经使应用程序服务器和Web服务器的界线混淆了。通过传送一个XML有效载荷(payload)给服务器,Web服务器现在可以处理数据和响应(response)的能力与以前的应用程序服务器同样多了。 另外,现在大多数应用程序服务器也包含了Web服务器,这就意味着可以把Web服务器当作是应用程序服务器的一个子集(subset)。虽然应用程序服务器包含了Web服务器的功能,但是开发者很少把应用程序服务器部署(deploy)成这种功能(capacity)(译者注:这种功能是指既有应用程序服务器的功能又有Web服务器的功能)。相反,如果需要,他们通常会把Web服务器独立配置,和应用程序服务器一前一后。这种功能的分离有助于提高性能(简单的Web请求(request)就不会影响应用程序服务器了),分开配置(专门的Web服务器,集群(clustering)等等),而且给最佳产品的选取留有余地。 |
-- 作者:heying -- 发布时间:2010-5-1 9:29:37 --
|
-- 作者:heying -- 发布时间:2010-5-1 9:33:18 --
WEB服务器的发展趋势
目前,Web服务器的发展有三个主要趋势: HTML被称为“第一代Web语言”,如前面的介绍,HTML作为Web的开发语言,对Web应用的发展起到了关键性的作用。但是HTML有一个致命的缺点:只适合于人与计算机的交流,不适合计算机与计算机的交流。HTML通过大量的标记来定义文档内容的表现方式,它仅仅描述了应如何在Web浏览器页面上布置文字、图形,并没有对Internet的信息含义本身进行描述,而信息又是Web应用中最重要的内容。通过HTML表现出来的文字、图形内容很容易被人理解,但却不利于计算机程序去理解。另外,HTML的另一个问题就是它的标记集合是固定的,用户不能根据自己的需要增加标记;而且各种浏览器的规格不尽相同,要使我们用HTML做的网页能够被所有浏览器正常显示,我们只能够使用W3C(万维网协会)规定的标记来创建网页。 正如前面所说,Web服务器向Web浏览器提供的信息都是来自有一定结构的数据库,在数据库里,为了检索和管理的方便,信息按照它本身的意义(如姓名、年龄、工作单位等)被存放在相应的字段里,一旦这些数据被调出来,经过CGI、ASP、JSP、PHP等转换成HTML后,其原来的意义无法转移到HTML标记中来,用户也就无法按照信息本来的意义去阅读。并且,由于操作系统以及数据库的不同,不同的系统及应用层面之间要想互相理解对方的数据格式是相当困难的。这就需要一种新技术或标准能够将最初保存在数据库服务器中的原始数据结构在不同的系统层面共享。这种新技术就是XML。 使用XML可以解决上述的难题。W3C对XML作了如下描述:“XML描述了一类被称为XML文档的数据对象,并部分描述了处理它们的计算机程序的行为。XML是SGML的一个应用实例。从结构上说,XML文档遵从SGML文档标准。”同HTML一样,XML也是一种基于文本的标记语言,都是从SGML(Standard Generalize Markup Language,标准通用标记语言)发展而来,二者的不同在于:XML可以让我们根据要表现的文档,自由地定义标记来表现具有实际意义的文档内容,例如,我们可以定义〈文档名称〉〈/文档名称〉这样具有实际意义的标记。而且XML不像HTML那样具有固定的标记集合,它实际上是一种定义语言的语言,也就是说使用XML的用户可以定义无穷的标记来描述文档中的任何数据元素,将文档的内容组织成丰富的完整的信息体系。总起来说,XML具有四大特点:便于存储的数据格式、可扩展性、高度结构化以及方便的网络传输,这些特点为我们创建开放、高效、可扩展、个性化的Web应用提供了一个崭新的起点。 2.从有线到无线 电子商务正在从台式机向着更为广泛的无线设备发展,Cahners In-Stat市场分析家预测,世界范围内的无线用户的人数将会从2000年的2.71亿增加到2004年的13亿。Aberdeen集团的研究主任Darcy Fowkes认为,采用无线方式进行电子商务的优势并不仅仅在于方便,它还可以节约公司的财力,而且,移动办公能使工作更加高效。 然而,由于多种无线网络类型、标记语言、协议和无线设备并存的复杂情况,使得网络内容和数据转换成能够被无线设备所识别的格式并不容易。目前,许多企业都在致力于开发能够把应用程序以及互联网内容扩展到无线设备上的产品。 例如,IBM新版本的WebSphere Transcoding Publisher 3.5增加和改进了许多新的特性,可以将企业内部网上的数据翻译到多种无线设备上。该版本中新的特性包括对更多的无线设备、数据格式的支持,以及语言翻译功能。它基于Java架构,能把用HTML和XML等标记语言编写的应用程序和数据转换成WML、HDML(Handheld Device Markup Language)和iMode等无线设备所能识别的格式,这样,通过手持设备就可以访问互联网上的信息。 无线设备厂商Mobilize也推出了Mobilize Commerce产品,帮助企业进入无线网络。该软件可以通过无线连接的方式访问企业的内部系统,远程地实现订单发送,并进行确认。Mobilize Commerce可以充分利用XML对信息进行格式转换,以适合于无线设备,这些无线设备包括笔记本电脑、个人数字助理、无线电话、网络电话和双向寻呼等。 3.从无声到有声 世界上现在有十亿个电话终端,有超过2亿的移动电话。而就人自身的交流习惯来看,人们也更愿意利用听和说的口头的方式进行交流。 目前,文本语音转换器(TTS,Text to Speech)的研究工作已经取得了很大的进步,实现了自动的语言分析理解,并允许TTS的使用者增加更多的韵律、音调在讲话中,使TTS系统的发声更接近人声。在自动语音识别系统(ASR)领域里,自动语音识别系统在从整个词的模仿匹配,向音素层次的识别系统方向发展。自动语音识别系统的词汇表由一个基于声音片断的字母表构成,而且这种词汇表是受不同语言限制的。基于这种方式,在一个宽广的声音行列里,讲话能被识别系统发现和挑拣出来,并加以识别。并且,在识别一个词的时候,每一个音素将从系统的输入中挑拣出来,拼接组合后与已经有的音素和词语模板进行比较,来产生需要的模板。音素的识别大大减轻了ASR对讲话者的依赖性,并且使得它非常容易去建立大型的和容易修改的语音识别字典,从而满足不同应用市场的需求。 Web语音发展的另一方面是VoiceXML(Voice Extensible Markup Language-语音可扩展标记语言)的进展。VoiceXML的主要目标是要将Web上已有的大量应用、丰富的内容,让交互式语音界面也能够全部享受。Web服务器处理一个来自客户端应用的请求,这一请求经过了VoiceXML解释程序和VoiceXML解释程序语境处理,作为响应,服务器产生出VoiceXML文件,在回复当中,要经过VoiceXML解释程序的处理。VoiceXML 1.0规范基于XML,为语音和电话应用的开发者、服务提供商和设备制造商提供了一个智能化的API。VoiceXML的标准化将简化Web上具有语音响应服务的个性化界面的创建,使人们能够通过语音和电话访问网站上的信息和服务,像今天通过CGI脚本一样检索中心数据库,访问企业内部网,制造新的语音访问设备。VoiceXML的执行平台上面加载了相应的软件和硬件,例如,ASR、TTS,从而实现语音的识别以及文本和语音之间的转化。2000年5月23日,W3C接受了语音可扩展标记语言VoiceXML 1.0作为实例。 目前,IBM、Nokia、Lucent、Motorola等著名厂商都已经开发出相应支持VoiceXML的产品,但现在的ASR和TTS系统大多还不能支持中文。 |