第二讲应用服务器.ppt

上传人:本田雅阁 文档编号:2523500 上传时间:2019-04-05 格式:PPT 页数:67 大小:958.51KB
返回 下载 相关 举报
第二讲应用服务器.ppt_第1页
第1页 / 共67页
第二讲应用服务器.ppt_第2页
第2页 / 共67页
第二讲应用服务器.ppt_第3页
第3页 / 共67页
亲,该文档总共67页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《第二讲应用服务器.ppt》由会员分享,可在线阅读,更多相关《第二讲应用服务器.ppt(67页珍藏版)》请在三一文库上搜索。

1、第二讲 应 用 服 务 器,人们必须 不断地 提取 软件的共性成份 屏蔽 系统低层的复杂度 从而 在高层保持复杂度的相对稳定,内 容,一、动因 二、产生基础 三、结构与功能 四、现状与未来,一、动因,操作系统,数据库管理系统,应用服务管理系统(应用服务器),软件,初始状态:硬件(ENIAC) 如何提高算法适应性? 分离出了程序(汇编=),程序,硬件,硬件,初始状态:硬件 + 程序,程序的共性(稳定)成分:计算资源管理,操作系统(FMS=),应用程序,产生了:,分离出了:,软件,硬件,操作系统,初始状态:硬件 + 操作系统 + 应用程序,程序的共性(稳定)成分:数据管理,产生了:数据库管理系统(

2、IMS=),分离出了:应用软件,操作系统,操作系统,数据存储文件,数据库管理系统,应用程序,程序的共性(稳定)成分:网络资源管理,产生了:应用服务器(TP Monitor=),分离出了:业务逻辑(构件),初始状态:硬件 + 操作系统 + 数据库管理系统 +应用软件,二、产生基础,(1)终端仿真/屏幕转换中间件 用以实现 客户机图形用户接口 与 已有的字符接口方式的服务器应用程序的互操作 (2)数据访问中间件 为了建立数据应用资源互操作的模式 对异构环境下的数据库实现联接或文件系统实现联接的中间件 (3)远程过程调用中间件 程序员方便地编写客户端应用程序 调用位于远端服务器上的过程,1、中间件,

3、(4)面向消息中间件 用来 屏蔽各种平台及协议之间的特性 进行相互通信 实现应用程序之间的协同 (5)事务(交易)中间件 在分布、异构环境下 提供保证交易完整性和数据完整性的一种环境平台 (6)对象中间件 在分布、异构的网络计算环境中 将各种分布对象有机地结合在一起 完成 系统的快速集成 实现 对象重用,2、网络软件总体结构,OMG 的 OMA 微软 的 DNA SUN 的 J2EE Whos SOA,(1)OMA,世界上最大的计算机工业联盟、非赢利性组织 于1989年4月由8个公司发起 目前有800多家成员 全职工作人员只有一个20人左右 自身不做标准制订和开发工作 仅提供一种组织和机制 支

4、持OMG成员 进行 交流、合作 制订 技术规范 开发 符合标准的商用产品,两个重要的基石: 面向对象方法 商业可用性,OMG:,OMG的组织结构,Board of Directors(BOD),Platform Technology Committee(PTC),Domain Technology Committee(DTC),Architecture Board(AB),Task Force(TF),Special Interest Groups(SIG),Task Force(TF),Task Force(TF),Special Interest Groups(SIG),Special I

5、nterest Groups(SIG),OMG技术采纳过程:,RFI,RFP,Specification,Specification,Specification,everyone,Part of members,TF起草 DTC或 PTC发行,TF起草 AB评审 DTC或 PTC发行,TF评估、推荐 AB评审 DTC或 PTC批准,BOD批准,总线,计算机硬件中的模块及互联方式:,Object Services,Application Interfaces,Domain Interfaces,Common Facilities,OMA:Object Management Architectur

6、e,ORB:,“Object interoperate bus”,Services:,“Abstractions for Classic System-Programming Functionality”,Facilities:,“High Level Services: Domain Specific and Generic”,System Mgt.,Comp. Doc.,Bus. Object,Manuf.,(2)DNA,Presentation Level,DNA 提供多种表示服务 开发者可以根据具体情况选择最佳方案 HTML Scripting DHTML Components Win

7、32 API 以支持丰富的界面与客户环境 从手持无线设备到高端工作站,Business Logic Level,Component Services 基于互操作模型 Component Object Model(COM) 增强分布处理功能 Microsoft Transaction Server (MTS) 目前已发展为COM+ 通过降低为利用底层系统服务而编写的代码量 使开发分布式应用系统更为 快速 容易 廉价,COM+ 服务包括新的或增强的服务包括: Bring your own transaction. COM 构件可以参与由非COM+ 事务处理环境管理的事务 只要它支持Transact

8、ion Internet Protocol (TIP) Load balancing. 基于构件的应用程序可以以客户透明的方式 在应用程序群中分布工作负载 In-memory database. 内存数据库是一个事务性数据库系统 用以支持对数据的快速访问,Queued components. 异步执行在网络环境下是不可避免的 队列可以对异步执行提供良好支持 Event notification. COM+ 事件是同时支持单播/多播、发布/订阅的事件机制 允许多个客户“订阅”由各种服务器“发布”的事件 Expanded security. 支持基于角色的安全与处理访问许可安全 COM+ 增加了方

9、法级安全 Centralized administration. Component Services Explorer提供了一致的管理模型 减少了部署、管理及监控 n层的应用程序,Messaging Services Microsoft Message Queue Server 提供 松耦合、可靠的通讯服务 通过实现 push 风格的商务事件方便了应用系统的集成 在不可靠、代价低的网络上建立起可靠的应用系统 Microsoft Message Queue Server 还提供了 与其它消息队列产品的无缝连接 例如:IBMs MQSeries等,Web Application Services

10、 Internet Information Server (IIS) 可用于 开发基于Web的商务应用系统 这样的系统便于扩展、便于部署 作为IIS技术之一的Active Server Pages(ASP) 具有 语言中立 编译省缺 的特点 是服务器端脚本环境 用于创建、运行动态且交互的Web服务器应用程序 利用ASP脚本及其它协调构件构造的应用程序 可以与现有的系统、应用程序及数据协同工作,Data Level,Universal Data Access 提供对各种信息资源的高性能访问 包括关系、非关系数据 提供独立于工具与语言的编程接口 Universal Data Access 基于开放

11、的工业规范 得到了工业界及数据库厂商的广泛支持,DNA中基于Universal Data Access的框架包含两层: 在系统层: OLE DB 定义了一个基于构件的体系结构 封装了各种数据库管理系统服务 OLE DB 不对数据源进行约束 在应用层: ActiveX Data Objects (ADO) 提供了高层接口 使开发者可以从任何编程语言访问数据 在每一层: eXtensible Markup Language (XML)使开发者 可以在应用程序客户之间进行 描述、交付、交换结构化数据 XML 也可以在服务器之间进行结构化数据的传送,(3) J2EE,Java 2 Platform E

12、nterprise Edition(1.2) JAVA: Language Runtime(virtual machine) Platform : J2SE J2EE J2ME,背景,JavaTM 2 Platform, Standard Edition (J2SETM) J2SE 为构造并部署网络为核心的企业应用系统提供一个完整的、安全的基础,其范围从PC桌面到工作组服务器。 J2SE 包括: Java 2 (SDK), Standard Edition and Java 2 Runtime Environment, Standard Edition,JavaTM 2 Platform, E

13、nterprise Edition (J2EETM) J2EE是Java 2平台的一个完整版本,将业务紧要(Mission Critical)的企业应用系统推向任何 web 浏览器。 J2EE将SUN公司的多种技术集成到一个体系结构中,并提供了一种应用程序编程模型、兼容性测试套件,以降低开发网络软件的复杂性与代价。,JavaTM 2 Platform, Micro Edition (J2METM) J2ME是端到端(end-to-end)的Java 技术,适于正在增长的消费类与嵌入式市场。 J2ME 是一个被高度优化的运行环境,以下列消费类产品为目标: pagers cellular phon

14、es screenphones digital set-top boxes 以及 car navigation systems,总体结构,J2EE 支持4类构件: Application clients Applets Servlets and JSP pages Enterprise JavaBeans,包含的构件,容器为应用构件提供了运行态支持 在J2EE服务与应用构件之间增加一个服务器,使得容器可以透明地利用构件的部署信息( deployment descriptors )获取J2EE服务提供的功能。例如:事务管理、安全检查、资源缓冲、以及状态管理等。 一个典型的 J2EE 产品为每一类

15、的构件提供一种容器: application client container, applet container, web component container, 以及 enterprise bean container。,构件容器,一个资源管理驱动器(驱动器)是一个系统级软件构件实现与外部资源管理器的网络连接。 一个驱动器能够扩展J2EE平台的功能 途径为: 实现J2EE的一个标准服务接口 API (例如 JDBC driver) 为一个外部应用系统的连接器( connector )定义并实现一个资源管理器驱动器。,资源管理器驱动器,J2EE 平台包含可以通过JDBC API访问的数据库

16、,用于存储业务数据。 数据库可以从 web components, enterprise beans, 以及 application client components 访问 但不可以从 applets访问,数据库,J2EE 标准服务,HTTP HTTPS JTA RMI-IIOP JavaIDL JDBC JMS JNDI JavaMail JAF Connector JAXP JAAS ,HTTP HTTP client-side API 由 package 定义。 HTTP server-side API 由 servlet and JSP 接口定义。 HTTPS 支持HTTP的上述接

17、口同样支持基于SSL协议的HTTP。,Java Transaction API (JTA) Java Transaction API 包括两部分: 应用级接口,容器与应用构件用它来声名事务边界 J2EE SPI级接口,事务管理器与资源管理器之间的接口 SPI:service provider interface,RMI-IIOP 组成RMI-IIOP 的APIs 包括: 独立于底层协议的 RMI风格的编程接口 上述API的实现,支持 J2SE RMI protocol (JRMP) 及 CORBA IIOP J2EE 应用系统可以使用RMI-IIOP(在IIOP协议的支持下)访问与RMI编程约

18、束兼容的 CORBA services,JavaIDL JavaIDL 使得J2EE 应用构件可以利用IIOP调用外部的CORBA 对象 这些 CORBA 对象可以用任何语言编写,运行在 J2EE 之外 J2EE 应用程序可以使用JavaIDL,角色为CORBA services的客户,JDBC JDBC API 是与数据库连接的 API,Java Message Service (JMS) JMS是支持可靠的点对点( point-to-point ) 与 发布-订阅(publish-subscribe)消息模型 的标准API,JNDI JNDI API 是命名与目录访问的标准接口,用于定位构

19、件 包含两部分: 应用构件访问命名与目录服务时使用的应用级接口(API) 提供增加命名与目录服务时使用的服务提供接口 (SPI),JavaMail 许多Internet 应用程序需要发送email的能力,因此J2EE 平台包含 JavaMail API 及JavaMail SPI,使得应用构件能够发送Internet mail。,JavaBeans Activation Framework (JAF) JavaMail API 所使用的一种功能,Java API for XML Parsing (JAXP) JAXP 为工业标准 SAX 与 DOM 提供支持 以 parsing XML 文档

20、SAX:The Simple API for XML event-based API DOM:Document Object Model tree-based API,J2EE Connector Architecture Connector architecture 是将访问EIS(Enterprise Information Systems )的资源适配器插装到任何J2EE产品中的 J2EE SPI Connector architecture 定义了J2EE 服务器与资源适配器之间的系统级合约(Contract) 包括: J2EE与外部资源的连接管理合约 事务管理器与EIS的事务管理合约

21、 访问EIS的安全管理合约,Java Authentication and Authorization Service (JAAS) JAAS 提供用户认证及授权服务 JAAS 提供了 PAM (Pluggable Authentication Module) 框架标准的Java版实现 并扩展了支持基于用户授权的访问控制结构,(4) SOA,Service Oriented Architecture: 面向服务的架构 Gartner 1996 年最早提出 应用程序是通过组合一些松耦合并且具有统一接口定义方式的服务而构建起来的 更加关注业务流程 而不仅仅是底层的IT基础结构 松散耦合、集成之星

22、从购买软件到订阅、定制服务的转变!,目前存在多种被广泛接受的体系: OMA、DNA、J2EE、SOA 不同的应用服务器支持不同的体系 尽管存在一些不同: (1)概念不一致 (2)风格不一致 (3)服务不一致 (4)应用领域不一致 但它们在功能、结构上存在较大相似之处,三、应用服务器的结构与功能,应用服务器的纵向位置,操作系统,应用,应用服务器,应用服务器的横向位置,应用服务器,数据库,服务器,因特网,浏览器,浏览器,浏览器,应,用,层,系,统,层,显示代码,逻辑代码,数据,应用服务器的功能,提供构件运行环境,提供互操作机制,提供公共服务,构件运行环境 应用服务器一般通过构件容器为构件提供基本的

23、运行环境 具体功能包括: 管理构件的生命周期 管理构件的实例 管理构件的元信息等,互操作机制 这是针对分布性、异构性所提供的功能 所有的应用服务器皆提供了很强的高层通信服务 以屏蔽 节点的物理特性 以及各节点在处理器、操作系统等方面的异构性 具体功能包括: 业务层与表示层之间的通信 业务层与数据层(含遗留系统)之间的通信 业务层内部公共服务与应用层之间的通信 以及业务层内部构件之间的通信 等等,公共服务 应用服务器提供的主要公共服务包括: 查找服务 事务服务 安全服务 以及: 消息服务、集群服务、目录服务、日志服务、邮件服务等 对于面向领域的应用服务器 还可以提供更多的与领域业务密切相关的领域

24、公共服务,应用服务器的结构,名空间 管理,事务 管理,安全 管理,数据 访问,Web 访问,构件管理器,负载 管理,事件 管理,业务逻辑,操作系统,构件容器:,公共服务:,构件:,四、应用服务器的现状与未来,根据开发组织的背景,可以将现有的应用服务器产品进行如下划分: 中间件厂商开发的产品 例如:BEA公司开发的WebLogic IONA公司开发的iPortal ApplicationServer等 数据库厂商开发的产品 例如:Oracle公司开发的 Oracle 9i Application Server等 操作系统厂商开发的产品 例如:IBM公司开发的Websphere SUN开发的SUN

25、 ONE Application Server Microsoft公司开发的以MTS为核心的系统 开发工具厂商开发的产品 例如:Inprise公司开发的Borland Application Server等,现状:,其它大量由独立开发组织完成的产品 例如:JBOSS组织开发的Jboss OpenEJB组织开发的OpenEjb ObjectWeb开发的Jonas Ironflare AB开发的Orion Macromedia开发的JRUN 等等 国内在应用服务器的研究与开发上也取得了显著的进展 国家863计划支持了若干与应用服务器密切相关的项目 北京大学自行开发的PKUAS 在支持在线演化、支持多互操作协议等方面具有明显特色 金蝶公司发布了Apusic 东方通公司发布了TongWeb 等等,未来:,尽管应用服务器处于不断发展之中 与应用软件相比它仍然是相对稳定的 这是系统软件所具有的一般特性 尽管新技术、新需求令人应接不暇 但几乎所有的系统都需要系统软件的支持 新技术的出现 会对系统软件提出新的需求 并进行适当的扩展、调整 但这些变化不会改变系统软件的基本功能 新技术、新需求的出现不会替代应用服务器 不仅如此,它们的实现通常需要应用服务器的支持,问 题,为什么需要应用服务器? 应用服务器有哪些诞生基础? 应用服务器具有什么功能? 应用服务器具有什么结构?,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1