复习中间件1

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
中间件复习参考
1.网络软件是什么?它面临什么样的挑战? 答:网络软件是指分布在不同节点上的应用程序,能够互相通信,能够互相协作,以共同完成目 标任务。它必须解决互操作,数据交换,以及相关的分布性,可靠性,安全性的问题。 它面临的挑战由以下几个方面: 首先是来自软件自身的挑战,具体体现在: 1. 功能需求:越来越复杂,越来越庞大,涉及面越来越广,涉及到的技术越来越 多,这个我们的开发提出新的要求。 2. 非 功 能 性 需 求 : 网 络 环 境 中 对 软 件 提 出 了 新 的 如 时 间 响 应 等 的 非 功 能性的要求 3. 软件的演化:软件系统不可能一成不变,新需求、新技术不断出现 软件系统要不断升级 其次来自软件环境的挑战,体现在: 通信问题 异构问题 定位问题 可靠性问题 安全问题 管理问题 维护问题 这些挑战催生了目前的软件复用技术,构件技术,中间件技术。 软件复用 是软件工程里面产生的 尽可能的沿用下去 一直不成熟 与软件本身有关 由构件技术推动发展 二者相辅相成 构件技术提出原理性 推动软件复用技术 中间件技术 处理 非功能需求 不希望软件开发人员去处理 尽可能与业务五关的 由系统去实现 1. 请简述目前网络软件的总体结构? 答:目前取得广泛影响的网络环境软件总体结构有 对象管理组织(OMG)提出的对象管理体系结构 (OMA) 微软公司提出的分布式网络应用体系结构(DNA) SUN 公司提出的企业级 Java 平台(J2EE) 虽然这几种结构都各有各自的特点,但是我们可以看出他们都具有以下的特点: 1. 它们都是运行在网络环境上的,从横向来看分为表示层,业务逻辑层,数据层即:客户端 (提供用户界面,以及访问应用逻辑的手段) 、服务器端(它实现应用逻辑,并为实现实体 提供运行支持) 、及数据库端(为应用提供数据服务与管理) 。 2. 从纵向位置来看结构,应用服务器位于应用系统与操作系统之间。它屏蔽了计算机网络的 底层细节。 最重要的是应用服务器端,它提供构件的运行环境,提供互操作机制,并提供公共服务。处于 最核心的位置。 2. 应用服务器的基本功能 答: 提供构件运行环境 提供互操作机制(构件间的请求 服务) 提供公共服务(构件运行中的管理)
Page 2 of 4
EJB 构件 声明描述文件 接口+实现 EJB 接口 类型接口 a) b) c) d) l 公共类型接口:EJBHome 特定于构件的类型接口 (构件的创建) 公共实例接口:EJBObject (创建 激活 冻化) 特定于构件的实例接口 构件描述 – – – 类型 (会话构件(有状态 无状态) 实体构件) 接口(类型接口 实例接口) 引用(运行时的环境 资源) l l l 构件组装 – – – 与非功能性约束 安全性约束 每个操作只有什么角色访问 事务处理要求 构件引用 (环境)资源引用
Page 1 of 4
3. 目前在基于构件的网络软件中都有那些角色参与? 答:构件使用者(客户) 构件开发者 应用系统组装者 应用系统部署者 应用服务器提供商 系统管理员 4. 谈谈你对构件互操作的理解 答:协议 内容(接口) 实体 互操作是一个结点上的成员对另一个结点上资源的使用。 a) b) 互操作的目标在于实现操作发出方的功能调用,并提供一定的透明性支持,实现不同 互操作的过程:发送方将操作的方法与参数打包,作为一条消息进行发送,接收方则 操作空间之间的无缝连接; 对消息头进行解释,并根据所载信息的含义、参数执行相应的操作。 互操作就是功能调用,服务的请求。 互操作分为三个部分: 互操作协议(规则,怎么操作)是构件间请求 提供服务传送消息必须遵循的规则 的集合。 互操作接口(操作的内容) 互操作实体(主体,谁来进行操作) 互操作协议的要素: 数据表示(不同系统的数据表示不同 操作的参数要以串行化 需要共用的 统一的数据表示) 消息格式(高层协议带有一定的语义信息 对消息进行了分类 定义了多种 不同的消息格式) 协议映射(高层协议需要底层协议来实现和转换)IIOP,SOAP 互操作的接口: (网络环境下的接口除需要定义模块的功能性内容外, 还需要定义模块的约束性内容) IDL 常量 类型 异常 接口(常量 类型 异常 操作 属性) 值类型 模块 WSDL 抽象定义(类型 消息 端口类型 操作) 具体描述( 绑定 操作 服务 端口)
实例接口
EJB 构件声明
7. 构件运行环境有什么作用? 答:构件需要放在应用服务器中才能运行起来。作用有: 1 为构件的运行提供运行平台。 2 为构件的互操作提供支持。 3 协助构件实现应用系统的非功能性需求。 例如:COM 库,类厂,EJB 容器。 8. 什么是公共服务?(简答) 答:公共服务是应用服务器的组成部分,用于对应用的约束性需求进行支持。 构件是应用软件的组成部分,由构件规约和构件实现组成。 公共服务是系统软件的组成部分,基本上不实现应用系统的功能,也不会被链接到 具体的应用系统中。 9. 构件容器有什么作用.它的主要机制是什么? 答:应用服务器通过容器对大量构件实例的有效管理来提高系统的资源利用率。 它所依赖的主要机制为: 实例池(将暂时不用的资源实例缓存起来,放到实例池中。当下一个客户需要访问资源时, 直接从实例池中取出来为客户服务) 冻化/活化(对有态构件实例进行有效资源管理的技术) 生命周期管理(构件实例的生命周期管理) 11.构件与构件之间的组装由那几种形式? 答: 组装 包括构件与构件的组装 构件与公共服务的组装建立起有效的关联,从而构成满足用 户需求的应用系统的过程
参数已消息方式描述
见图 5. 什么是构件? 答:构件是可以被复用的软件构成成分,由构件规约与构件实现两部分组成。 构件规约 (用于描述如何对构件进行使用与管理)由三部分组成: 构件接口 构件静态管理信息 构件的动态运行管理规约 构件实现 是构件内部的代码实现体。 具体实现有 COM,EJB。 6. EJB 构件的基本结构是怎样的?
Page 4 of 4
百度文库
Page 3 of 4
构件的组装 1. 基于源代码形态构件的组装。运行效率高,但对修改维护不利。 2.基于存储态目标码形态构件的组装。通过声明等组装。 3 基于运行态目标码形态构件的组装。 12. EJB 构件是怎么组装的? 是基于目标态的组装 声明 接口 实现 13. IDL 和 WSDL 文档的结构是怎么样的? 答:接口定义语言(IDL)是用来定义客户与服务器之间接口的语言。 对象管理组织(OMG)定义了 OMG-IDL(教材 76 页) Web 服务描述语言 (WSDL) 是在 Web 服务体系中, XML 形式描述 Web 服务的语言。 以 (教材 87 页) 参见 ppt。10-11
相关文档
最新文档