应用软件集成体系结构
信息系统集成 10
2019/2/18
3.3 分布式计算
网格计算
Grid称为网格计算 思想在于:将闲置在Internet各处的MIPS捆绑在一起加 以利用,以便用累积的计算能力来完成超级计算机的 任务。 网格计算主要应用在大批量的小任务,如:声视频点 播,具有突发的大量的资源需求,实时分布式仪表系 统等。 目前对网格的一般理解是指把整个互联网或某个区域 整合成统一的计算机系统。 网格的根本特征不在于规模,而是资源的广泛共享。
2019/2/18
信息系统集成
3
3.1 概述
应用软件的计算模式
应用系统在某种计算问题的解决过程中,采用的对计算资源的组织、 调度上的某种有效方法。 计算资源是参与计算过程的所有资源:处理器、存储器、通信线路、 程序和数据等。 从发展历程看,应用系统的计算模式主要包括集中式和分布式计算。 20世纪80年代之前,人们深入思考的是如何充分利用计算资源。 近年来,网络技术的发展使得分布式计算技术成为核心技术。 工业化分布式计算技术的发展已经经历了两代:第一代分布式计算技 术是以支持信息共享为目标的面向过程的客户机/服务器技术;第二代 分布计算技术是以面向对象为主要特征的分布式对象技术。 当前以Internet为平台的Agent计算、网格计算等分布式计算技术逐步 深入的影响未来分布式计算技术的发展。
第三章 应用软件集成体系结构
概述 客户机/服务器模式 分布式计算 软件重用技术 中间件技术 J2EE应用架构 .NET应用架构 基于组件的软件开发
2019/2/18 信息系统集成 1
3.1 概述
软件应用架构
20世纪60年代到70年代,软件危机使软件成本日益增长,开发速度难以 控制,质量无法保证,软件的维护困难等。------软件工程 软件工程发展初期,设计的重点是数据结构和算法的选择上。随着规模 和复杂度的变化,人们开始认识到软件架构的重要性。
用户交互界面
客 户 机
2019/2/18
信息系统集成
5
3.2 客户机/服务器模式
B/S结构
Brower/Server 浏览器/服务器模式
数据库 客 户 机 客户操作系统 浏览器
服 数据库管理系统 务 网络操作系统 HTTP TCP/IP CGI IIOP Active X 数据库访问系统
HTTP TCP/IP
2019/2/18
信息系统集成
4
3.2 客户机/服务器模式
两层C/S模式
C/S的核心特征是任务的分解,由不同的计算 资源承担任务,通过协作完成任务。 两层C/S模式是最早使用的C/S模式。
服 务 器
数据库 数据库管理系统
网络操作系统
Request
客户端操作系统 应用业务逻辑
Response
2019/2/18
信息系统集成
11
3.3 分布式计算
分布式对象技术
分布式技术的应用使得系统规模越来越大。 网络间的异构问题必须解决。 分布式系统的复杂性使得系统的可靠性降低。 分布式软件的开发和维护成本高昂。 通过结合面向对象技术,实现分布式软件的可移植 性、互操作性、可靠性和可重用性。 屏蔽了不同系统间的差异和底层细节,减小分布式 系统开发难度,提高分布式软件的性能。 目前主流的有:COM/DCOM、Java、COBRA
2019/2/18
信息系统集成
7
3.2 客户机/服务器模式
多层C/S模式中,应用系统被划分为
客户层:一般PC,通过浏览器与Web服务器联系, 访问Web服务器资源。 表示层:Web服务器,接受用户交互式操作,并 将操作请求传递给应用服务器。 业务逻辑层:应用服务支撑系统,分布式对象管 理容器,接受Web服务器的请求,执行业务逻辑 返回结果,与后台数据库绑定,一般将数据库资 源映射为数据对象。 数据管理层:数据库服务器。
2019/2/18
信息系统集成
8
3.2 客户机/服务器模式
多层C/S结构的基本计算过程
对多层C/S模式的支持规范主要有Sun的J2EE和 微软的.NET。
数 据 库 服 务 器
数据库 数据库管理系统 网络操作系统 服务 客 户 机 客户操作系统 浏览器
请 求
应 用 服 务 器
应用逻辑 中间件管理容器 网络操作系统
Web 服 务
Request
Web支撑系统 网络操作系统 Request
6
2019/2/18
信息系统集成
3.2 客户机/服务器模式
多层C/S结构
B/S模式在构造复杂应用系统时,利用CGI等 技术开发部署很难提高系统运行效率。 现有的Web服务器支撑系统很难对各类中间 件进行有效的管理和组织,需要专门针对中 间件的支撑系统。 数据操纵的安全性很难保障。 应用系统被划分为:客户层、表示层、业务 逻辑层(应用层)、数据管理层(数据层)。
软件架构的作用
软件架构是系统环境中的一个高层概念,每个系统都有一个架构。架 构是用于表达整个系统的结构和行为的模型,表达系统如何满足其环 境上下文的要求,并表示主要的系统构件、其交互和依赖关系,以及 其操作所需满足的约束。
软件架构模型
研究软件架构的首要问题是如何表示软件架构,即如何对软件架构建 模。根据建模角度(侧重点)不同,通常将软件架构的模型分为5种: 结构模型、框架模型、动态模型、过程模型和功能模型。 最常用的是结构模型和动态模型。
Web 服 务 器
Web支撑系统 网络操作系统
2019/2/18
信息系统集成
9
3.3 分布式计算
移动Agent
20世纪90年代初由General Magic 公司在推出商业 Telescript时提出的,主要思想在于:结合Agent技术 和分布式计算技术,将服务请求Agent动态移到服务 器端执行。使此Agent较少依赖网络传输,而直接面 对要访问的服务器资源,降低了对网络带宽的依赖。 移动Agent不需要统一调度,由用户创建的Agent,用 户可自行创建多个Agent,同时在一个或多个节点上 运行,形成并行求解能力。 可自行决定何时中断任务,并将自己转移到另一台机 器上。 具有自治性和智能路由的性能。
பைடு நூலகம்
软件架构的定义
将软件系统划分成多个模块,明确各模块之间的相互作用,组合起来实现 系统的全部特征,就是系统的架构。 软件架构为软件系统提供了一个结构、行为和属性的高级抽象,并由构成 系统的元素的描述及元素的相互作用、元素集成的模式,以及这些模式的 约束组成。
2019/2/18
信息系统集成
2
3.1 概述