- 浏览: 154452 次
- 性别:
- 来自: 北京
-
文章分类
最新评论
-
瓶鱼跃:
嗯嗯,写的挺好···
希尔排序 -
stinge:
wangzaidali 写道 是不是感觉太简单了?呵呵 ...
JQuery提交表单 -
wangzaidali:
JQuery提交表单 -
Will.Du:
挺好的,不过你的层数太少,如果是extends了两次,那么su ...
super 与 this -
goo.goo:
temp.b.add(b.get(i)); 这里也得clo ...
Java中Cloneable接口的用法
应用服务器与WEB服务器
Web服务器(Web Server)
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)等等),而且给最佳 产品的选取留有余地。
来源:http://www.chinaz.com/Server/Web/0311E2122009.html
例
apache服务器
apac服务器是一种WEB服务器
Apache web服务器软件拥有以下特性
支持最新的HTTP/1.1通信协议
拥有简单而强有力的基于文件的配置过程
支持通用网关接口
支持基于IP和基于域名的虚拟主机
支持多种方式的HTTP 认证
集成Perl 处理模块
集成代理服务器模块
支持实时监视服务器状态和定制服务器日志
支持服务器端包含指令(SSI)
支持安全Socket层(SSL)
提供用户会话过程的跟踪
支持FastCGI
通过第三方 模块可以支持Java Servlets
其他WEB服务器,如Lighttpd、 Nginx
Tomcat服务器(应用服务器)
运行时占用的系统资源 小,扩展性好,支持负载平衡与邮件服务等开发应用系统
Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器 ,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。
发表评论
-
UML中的聚合,关联,泛化等关系
2011-10-17 21:00 8921. Overview UML设计类中 ... -
Java栈与堆
2011-10-10 12:27 820Java栈与堆 ----对这两 ... -
Java中serialVersionUID的解释
2011-10-10 12:01 702Java中serialVersionUID的解释 ... -
静态类
2011-10-04 14:46 848静态类 通常一个普通类不允许声明为静态的,只有一个内 ... -
transient
2011-10-04 14:43 1291java语言的关键字,变量修饰符,如果用transient声明 ... -
java泛型
2011-09-30 20:56 828泛型 (Generic type 或者 generi ... -
Java中Cloneable接口的用法
2011-09-28 23:10 1408今天编写一个用到Cloneable接口的程序时才注意到原来 ... -
单例模式
2011-09-25 17:02 711单例模式 singleton模式:确保内存中某 ... -
java序列化
2011-09-25 10:29 701Java序列化与反序列化(实践) 基本概念 ... -
JAVA的容器---List,Map,Set
2011-09-15 10:07 687JAVA的容器---List,Map,Set Co ... -
初始化
2011-07-15 10:49 746类中变量初始化方法: 1、声明时初始化 2、构造函数初始化 ... -
myeclipse tomcat 端口被占
2011-07-04 18:59 933oracle占用8080端口,tomcat启动出错 1 ... -
对象创建过程
2011-06-28 10:18 891对象创建过程 假如创建类Hello的对象: ... -
垃圾回收机制
2011-09-24 20:13 983垃圾回收器 垃圾回收期只释放经由new分配的内 ... -
静态变量和实例变量
2011-06-10 16:43 742静态变量和实例变量 静态变量:由static修 ... -
重载与重写
2011-06-10 15:47 712重载与重写 方法的重写 Overriding 和 ... -
Java关键字和保留字
2011-06-10 15:42 1058Java中关键字(keyword)和保留字(reserved ... -
JDK
2011-06-09 20:47 1006JDK JDK(Java Deve ... -
虚拟机
2011-06-09 20:27 782虚拟机 JVM(java virtual ma ... -
编译器
2011-06-09 20:12 689编译器 编译器 用来将源码编译成c ...
相关推荐
**J2EE应用服务器与Web服务器解析** J2EE(Java 2 Platform, Enterprise Edition)应用服务器和Web服务器是两种不同层次的服务器,它们在JavaWeb应用程序的部署和执行中扮演着不同的角色。 **一、Tomcat与应用...
Web服务器与Web应用服务器的区别,详细讲解WebServer与WebApplicationServer区别
IIS、Apache、Tomcat、Weblogic、WebSphere 都是不同的服务器, Apache 是纯粹的 Web 服务器,Tomcat 是一个 Servlet 和 JSP 容器,可以作为轻量级应用服务器,IIS 是一个兼具应用服务器功能的 Web 服务器,Weblogic...
Web服务器和应用程序服务器是两种不同的服务类型,它们在互联网应用中扮演着各自的关键角色。本文将详细解释这两者的概念、功能以及它们之间的差异。 首先,Web服务器主要负责处理HTTP协议,它的核心任务是接收来自...
"应用服务器的搭建--创建Web服务器" 本实验报告旨在详细介绍应用服务器的搭建过程,特别是使用 IIS 组件配置 Web 服务器的详细步骤,并进行测试连接。 Experiment Purpose 1. 了解 Windows 服务器的网络组件,...
### WEB服务器和应用服务器之间的区别 #### 一、概述 在现代互联网技术中,服务器扮演着至关重要的角色,尤其在企业级应用开发中,WEB服务器和应用服务器的区别尤为重要。这两种服务器各自承担着不同的职责,相互...
四、WEB服务器与动态语言集成 1. CGI(Common Gateway Interface):早期的动态内容处理方式,效率较低。 2. FastCGI:预启动进程池,提高CGI的效率,减少每次请求的启动时间。 3. PHP-FPM:PHP FastCGI进程管理器,...
Web 服务器与应用服务器配置(Apache+Tomcat&PHP) 本文将详细介绍 Web 服务器与应用服务器配置,包括 Apache、Tomcat 和 PHP 的安装、配置和集成。这些技术是 Web 开发和学习的基础,掌握它们可以帮助开发者更好地...
"简单Web服务器设计与实现" 本文主要介绍了简单Web服务器的设计与实现,涵盖了WWW的工作原理、HTTP协议、Java语言、Web服务器的设计与实现等方面的知识点。 WWW的工作原理基于客户机/服务器计算模型,由Web浏览器...
这包括内存管理、线程池配置、JVM调优、数据库查询优化等,都是Oracle应用服务器Web开发中的重要技能。 9. **部署和集群**:了解如何在Oracle应用服务器上部署应用程序,以及如何设置和管理集群,以实现高可用性和...
【Web服务器与应用服务器概述】 Web服务器和应用服务器是两种在网络架构中扮演不同角色的关键组件。Web服务器,如IIS和Apache,主要负责处理HTTP协议,向客户端(通常是浏览器)提供静态网页内容,如HTML、CSS和...
**WEB服务器与应用服务器的区别** **一、WEB服务器** WEB服务器,其主要职责是处理HTML文件,即存储和提供网页的服务器。常见的WEB服务器软件包括IIS和Apache。它们主要负责与客户端(通常是Web浏览器)进行交互,...
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台...
严格意义上的Web服务器,如Nginx、Apache、IIS,主要负责发送静态页面内容,而动态内容的处理则需要通过CGI、FastCGI、ISAPI等接口交给应用服务器来完成。应用服务器如WebLogic、JBoss不仅支持HTTP协议,还具备更...
Web服务器配置则包括SSL证书、虚拟主机等高级设置。Web模块属性,如上下文根和JSP/JSF选项,直接关联Web应用的访问路径和页面渲染方式。 最后,Oracle的Weblogic Server提供了详尽的Web应用配置选项。常规配置包括...
在IT领域,Web服务器是提供HTTP(超文本传输协议)服务的应用程序,允许用户通过互联网访问网站和网页。本文将详细介绍如何简单搭建一个WEB服务器,包括基础概念、所需工具及步骤,旨在帮助初学者快速入门。 一、...
总结来说,Web服务器专注于提供静态内容,HTTP服务器与Web服务器概念接近。应用程序服务器则负责处理动态内容和业务逻辑,通常包含更丰富的功能。在实际应用中,这些服务器可以单独使用,也可以相互协作,以满足不同...