应用服务器的定义

  应用 服务器 是指通过各种协议把 商业逻辑 曝露给 客户端 的程序。它提供了访问商业逻辑的途径以供客户端 应用程序 使用。应用服务器使用此商业逻辑就像调用对象的一个方法一样。   简单的说,能实现 动态网页技术 的服务器叫做应用服务器。

编辑本段应用服务器的分类

  通常,根据确定文档内容的时间,所有文档可以划分为如下三类。

o 静态

  o 静态:静态We b 文档是一个存储于We b  服务器 的文件。静态文档的作者在写作的时候确定文档的内容。由于文档内容不会变化,所以对静态文档的每次访问都返回相同 结果 。

o 动态

  o 动态:动态web文档不是以一个预先定义的格式存在,而是在 浏览器 访问web 服务器 时创建。当一个请求到达时,web服务器运行一个 应用程序 创建 动态文档 (dynamic documents),服务器返回程序的输出作为应答。由于每次访问都要创建新的文档,动态文档的内容是变化的。

o 活动

  o 活动:一个 活动文档 不完全由 服务器 一端说明,而是包括一个计算并显示值的程序。当 浏览器 访问活动文档时,服务器返回一个浏览器可以本地执行的程序。当该程序运行时,它可以和用户交互执行并不停地改变显示。这样,活动文档的内容是不固定的-只要用户让程序保持运行,它总是在不停地变化。静态文档的主要优点在于它的简单、可靠性和性能。由于静态文档是直接指定格式。它可以由不懂编程的人创建。更重要的是,在已经创建和测试之后,静态文档永远是正确的。最后,浏览器可以快速存取文档,同时通过把文档放在本地盘上的缓冲区内以加快以后对这些文档的访问速度。 静态文档的主要缺点是不灵活-当信息变化时文档必须重新设计。另外,改变是很耗费时间的,因为它需要人工修改文件。因此,静态文档不适合频繁变化的报告信息。 动态文档 的主要优点是它报告当前信息的能力。例如,一个动态文档可以用来报告股市行情、天气预报或音乐会售票情况等内容。当浏览器申请信息的时候,服务器运行一个 应用程序 ,访问所需要的信息,并创建一个文档,服务器于是将该文档返回给浏览器。动态文档把任务放在服务器一端,浏览器采用和静态文档同样的方法访问动态文档。实际上,从浏览器的角度来看。动态文档和静态文档是无区别的。由于动态文档和静态文档都采用H T M L 编写,浏览器不知道服务器是从一个磁盘文件还是 计算机 程序中取得文档。动态文档的主要缺点是增加成本和不能显示变化的信息。和静态文档类似,动态文档在浏览器取得文档后不会再改变。因此在信息发送给浏览器之后,文档就开始过时。例如一个报告股市信息的动态文档,由于股市信息变化迅速,当用户访问时文档很快就过时。动态文档的创建和访问成本比静态文档昂贵。创建动态文档的 代价 较高,因为动态文档的创建者必须懂得如何写程序。另外,程序必须仔细编写和广泛测试,以保证输出的合法性。验证这样一个程序的正确性是很困难的,因为输入可以包含不同来源的多种数据。动态文档除了创建成本高,所需的硬件成本也较高,因为服务器端需要更强大的计算机。最后取出动态文档需要的时间稍多些,因为服务器需要额外的时间去运行程序创建文档。尽管在申请到达时动态文档才创建,但信息可能很快过时,活动文档相对于动态文档的主要优点在于它持续更改信息的能力。例如,只有活动文档能够快速改变显示以显示动画。更重要的是,活动文档能够直接访问信息源并连续更改显示。例如,一个显示股市行情的活动文档可以连续读取股市信息,并且不需要用户干预而自动修改显示。活动文档的主要缺点是创建和运行这种文档所需的 额外费用 ,同时缺少安全性。首先,活动文档的显示需要更复杂的浏览器 软件 和一个强有力的计算机运行浏览器。另外,写正确的活动文档比写其他画面需要更多的编程技巧,所得到的 结果 文档更难于测试。而且,由于活动文档必须运行在 客户端 而不是服务器端,程序必须解决在不同客户上的兼容性问题,最后,活动文档存在着潜在的安全性问题,因为文档既输入信息又输出信息。

编辑本段概括

  Web 文档根据文档内信息改变的时间可分为三类。 静态 文档的信息只有当作者修改时才会改变, 动态文档 的信息在 服务器 端收到文档申请时改变, 活动文档 显示的信息在文档下载到 浏览器 一端运行后改变。由于创建动态文档的责任在管理文档的服务器一端,支持动态文档也只需修改服务器。实际上,变化意味着扩展,管理动态文档的服务器也包含了处理静态文档的代码。处理动态文档的Web服务器需要三个特性。  首先,服务器程序必须扩展,当每次请求到达时,能够执行一个单独的创建文档的 应用程序 。服务器必须编成能够捕获应用程序的输出,并且将该文档返回给浏览器。   其次,必须为每个动态文档写一个单独的应用程序。   最后,服务器必须配置成能够知道哪一个URL 对应于动态文档和哪一个URL 对应于静态文档。对每个动态文档,配置时必须说明产生文档的应用程序。每个申请包含着一个对应动态或静态文档的URL,服务器使用配置信息和收到的请求中的URL决定如何处理。如果配置信息说明申请中的URL对应着一个静态文档,服务器就跟往常一样取出文件。如果申请中的URL对应着动态文档,服务器选择生成该文档的应用程序,运行程序,并且把程序的输出作为文档返回给浏览器。

编辑本段应用服务器和WEB服务器的区别

  通俗的讲,Web 服务器 传送(serves)页面使 浏览器 可以浏览,然而 应用程序 服务器提供的是 客户端 应用程序可以调用(call)的方法(methods)。确切一点,你可以说:Web服务器专门处理 HTTP请求 (request),但是应用程序服务器是通过很多协议来为应用程序提供(serves) 商业逻辑 (business logic)。

Application Server相关推荐

  1. IBM WebSphere Application Server 诊断和调优

    近段时间,我们项目中用到的WebSphere应用服务器(WAS),但在客户的production环境下极不稳定,经常宕机.给客户造成非常不好的影响,同时,也给项目组很大压力.为此,我们花了近一个月时间 ...

  2. The application server could not be contacted

    从PostgreSQL 9.6升级到PostgreSQL 10后,在使用过去的pgAdmin 3出现了很多问题,无法完全支持PostgreSQL 10. pgAdmin 4体验差,用起来很糟糕,关键是 ...

  3. 简介 NetWeaver Application Server 的三层架构

    NetWeaver Application Server 是三层架构: Presentation layer .Application layer .Database layer . 上图来自于 he ...

  4. WebSphere Application Server v6中的问题诊断以及日志策略

    WebSphere Application Server 是一个基于 Java 的 Web 应用程序服务器,它构建在开放标准的基础之上,能帮助您部署与管理从简单的 Web 站点到强大的电子商务解决方案 ...

  5. WebSphere Application Server 5.0在Linux平台上中文界面乱码问题的解决

    第一部分:问题描述 当WebSphere Application Server(以下简称为WAS)安装到中文Linux平台时,经常出现中文被显示为方块的情况,如下图所示: 图 1 应用程序组装工具乱码 ...

  6. sun服务器dt消息不能被启动,Sun ONE Application Server 错误

    Sun ONE Application Server 错误 缺省浏览器与 Sun ONE Application Server 7 不兼容 (4741123) 通过 Solaris 9 12/02 操 ...

  7. 使用Java程序通过http post访问Application server

    Created by Jerry Wang, last modified on Aug 20, 2014 source code如下: import java.io.FileNotFoundExcep ...

  8. 得到application server上所有的logon user

    通过function module THUSRINFO 可以得到当前application server instance上登陆user的详细信息,如terminal,使用的tcode, last t ...

  9. Attachment assignment block里选择的文件是如何传到application server

    Created by Jerry Wang, last modified on Dec 12, 2014 使用Chrome debug attachment upload page:从local la ...

  10. 如何得到当前application server的host name和port number

    Created by Jerry Wang, last modified on Aug 26, 2014 DATA: host TYPE string,port TYPE string. CALL M ...

最新文章

  1. 如何使用Redux-saga和ReactDnD测试React和Redux(哇!)
  2. C++ vector 容器浅析
  3. Git学习(一)git服务器的简易搭建
  4. Java的拓展包C3P0和DBUtil的使用
  5. python牛顿法寻找极值_python使用梯度下降和牛顿法寻找Rosenbrock函数最小值实例...
  6. 格式 数组的基本使用 0912
  7. 逻辑与计算机科学之间有什么联系,数学、逻辑与计算机科学的关系
  8. zynq+linux固化程序,MiZ702学习笔记6——ZYNQ如何固化程序
  9. python throw error_Python实用笔记——错误处理
  10. IAP升级功能编写初期的一些困惑与疑问---完毕功能后的总结
  11. opencl JAVA编程_《OpenCL异构并行编程实战》第十二至十四章
  12. csp 201512-4 送货(hierholzer算法的递归和堆栈实现)
  13. 猎豹网校C++ Primer学习笔记
  14. 【游戏开发实战】Unity 2D游戏手指控制移动摄像机镜头和双指缩放镜头(愤怒的小鸟为例)
  15. Openbravo体验
  16. 云锁和悬镜服务器哪个好,安全狗、悬镜、云锁、云帮手建议用哪个比较好?
  17. Hive3第五章:函数
  18. 数字化时代的数据安全与治理
  19. java代码绘制简单的图形
  20. 23考研| 你来了,准硕士!!!

热门文章

  1. 彻底读懂行为经济学名著《思考,快与慢》
  2. pytest接口自动化测试框架搭建
  3. 汇编语言:AX、BX、CX、DX寄存器知识点梳理
  4. visual studio 错误:在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include StdAfx.h”?
  5. 猿人学web端爬虫攻防平台第七题动态字体
  6. 想要转行成为程序员该怎么做呢?
  7. IntelliJ IDEA 2018 激活码
  8. bt面板增加多个站点用同一个IP
  9. mysql数据库的配置
  10. RK3399 Android7.1如何查看屏幕分辨率