网站大量收购独家精品文档,联系QQ:2885784924

第二章 JAVA WEB基础知识.pdf

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一、WEB 服务器与应用程序服务器 1.Web 服务器 处理HTTP 请求(request),响应(response)HTML页面。 2.应用程序服务器 提供的是客户端应用程序可以调用的方法,即通过很多协议来为应用程序提供 (serves)商业逻辑 (business logic)。 应用程序服务器的功能: 安全服务(Security Services) 状态和会话管理(State and Session Management) 负载平衡和失败恢复(Load Banlancing and Fail-Over) 业务和处理逻辑(Business and Processing Logic) 胖客户访问服务器组件(Rich-Client Access to Server Components) 胖 客户可以直接访问服务器端组件。例如Java applet 可以请求服务器实例 化一个组件,然后就可以调用其方法。通常的执行顺序是:连接服务器,调 用方法获得数据结果集,断开连接,显示数据给用户并 允许对数据操作,执 行本地数据更新,连接服务器,发送数据更新给服务器,执行服务器上数据 更新,最后将数据存入数据库。 HTML 生成 纯 的瘦客户程序不能直接与服务器端组件通信,没有办法用客户浏览器的 HTML 或ECMA 脚本交换结果集。这意味着服务器端需要另一个组件来生成和 处理 HTML。应用程序服务器必须解码(decode)一个URL,来决定执行哪一 个组件。该组件访问数据库或其他组件,获得结果集,将结果集包装为 HTML (或XML),再将其返回给浏览器。应用程序服务器上的HTML 生成组件变成 了业务逻辑组件的客户。 一旦页面被返回给浏览器,我们期待用户更改数据并提交回应用程序服务器。 返回给服务器的数据可以作为URL 参数(GET),通过表单字段(POST),或 者通过cookie。服务器从HTTP 请求中获取数据,使其为服务器端被调用的 组件使用。 数据访问 事务管理(Transaction Management) 连接池(Connection Pooling) 当页面被提交,数据被更新时,服务器必须连接数据库以完成工作。如果 用户每次提交页面时都要执行数据库连接和断开,系统的性能和扩展性就会 变得很差,因为 在一个事务周期中建立到数据库的连接是一个开销相当大的 操作。一个解决方案是当用户登录时建立连接,而当用户离开或超时时断开 连接。但这个方案显然缺乏可 扩展性,如果5000 个用户同时登录,那么就 需要5000 个数据库连接。 应用程序服务器不为每一个用户保持单独连接。实际上,它维护了一个连 接池,供所有服务器端组件共享。如果用户需要更新数据,相应组件就会请 求服务器从连接 池中分配一个可用连接,当所有的更新被完成后,组件负责 通知服务器是否所有操作都成功。当一个事务结束后,连接被立刻释放。 线程池和实例池(Thread Pooling and Instance Pooling) 高 端的应用程序服务器还提供线程池和实例池。因为对于线程或者组件实例 而言,开销最大的操作来自创建和实例化过程。线程池和实例池可以提供更 好的性能,线程 和组件实例可以立刻被服务器所使用。但如果组件是有状态 的,或者线程不能被快速释放,线程池和实例池机制将不能发挥其优点。 3.实际应用模式 现在大多数应用程序服务器也包含了Web 服务器,这就意味着可以把Web 服务器 当作是应用程序服 务器的一个子集(subset)。虽然应 用程序服务器包含了Web 服务器的功能,但是开发者很少把应用程序服务器部署(deploy)成这种功能 (capacity)(译者注:这种功能是指既有 应用程序服务器的功能又有Web 服务器 的功能)。相反,如果需要,他们通常会把Web 服务器独立配置,和应用程序服 务器一前一后。这种功能的分离有助于提 高性能(简单的Web 请求(request)就 不会影响应用程序服务器了),分开配置(专门的Web 服务器,集群(clustering) 等等)。 4.应用 IIS、Apache、Tomcat 都可以属于Web 服务器,Weblogic、WebSphere 都属于应 用服务器。 Apache 是纯粹的web 服务器,

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档