第十二章 分布式系统架构
- 格式:pdf
- 大小:1.50 MB
- 文档页数:54
软件工程导论
42
机构间分布式计算
由于安全以及互操作等原因,许多的分布式 计算系统主要在机构层次上实现. 采用局部的标准,管理和操作流程. 新的分布式计算模型运行设计机构间分布式 计算系统。
2012/3/17
软件工程导论
43
Peer-to-peer 架构
Peer to peer (p2p) 系统是分散式的系统,计算可以 在网络中的任何节点上执行. 整个系统的设计是为了充分利用大量网络计算机的 计算能力和存储能力. 许多p2p系统都用于个人系统,但迹象表明这项技 术越来越多地用于商业环境.
2012/3/17 28
软件工程导论
分布式对象体系结构的使用
可以作为一个逻辑模型来组织和构造系统。在这种 情况下,要考虑如何提供应用功能,把这些功能按 照服务或服务组合的形式给出. 也可作为实现客户/服务器系统的一种柔性方法。系 统的逻辑模型是客户/服务器模型,但客户和服务器 都被当作分布式对象通过公共软件总线相互通信.
Two-tier C/S architecture with fat clients
Three-tier or multi-tier C/S architecture
2012/3/17
软件工程导论
25
分布式对象体系结构
在分布式对象体系结构中不存在客户机和服务器的 界限. 每一个分布式的实体既为其他对象提供服务也从其 他对象处接受服务. 对象间通过对象请求代理的中间件(ORB)进行通信. 分布式对象体系结构比设计C/S系统要复杂.
内容
多处理机体系结构 客户/服务器体系结构 分布式对象体系结构 机构间分布式计算
2012/3/17
软件工程导论
3
分布式系统
现在基本上所有的大型系统都是分布式系统. 分布式系统的信息处理分布在许多计算机上 而不是局限于一台机器. 对于企业计算系统来说,分布式软件工程变 得非常重要.
2012/3/17
分布式对象体系结构
没有客户机与服务器的区分。系统中任何对象将提供 和使用其它的对象所提供的服务。 P2P/SOA
2012/3/17
软件工程导论
8
中间件
管理和支持分布式系统中不同组件的软件。基本 上,它位于系统的中间层次. 中间件通常是采购成熟商业软件而不是应用开发人 员编写. 实例
Transaction processing monitors; Data converters; Communication controllers.
软件工程导论
23
因特网银行系统的分布式结构
2012/3/17
软件工程导论
24
不同客户/服务器体系结构的使用
Architecture Two-tier C/S architecture with thin clients Applications Legacy system applications where separating application processing and data management is impractical. Computationally-intensive applications such as compilers with little or no data management. Data-intensive applications (browsing and querying) with little or no application processing. Applications where application processing is provided by off-the-shelf software (e.g. Microsoft Excel) on the client. Applications where computationally-intensive processing of data (e.g. data visualisation) is required. Applications with relatively stable end-user functionality used in an environment with well-established system management. Large scale applications with hundreds or thousands of clients Applications where both the data and the application are volatile. Applications where data from multiple sources are integrated.
2012/3/17
软件工程导论
19
胖客户端模型
将更多的处理放在客户端本地处理. 胖客户端模型比瘦客户端模型在分布式处理 上更有效. 比瘦客户端更加复杂,特别是管理方面。应 用程序的新版本需要在所有的客户端上重新 安装.
2012/3/17
软件工程导论
20
客户/服务器ATM系统
2012/3/17
软件工程导论
31
分布式对象体系结构主要缺点
复杂程度高. 不能反应自然的业务逻辑和过程. 设计通用的服务提供模式比较困难,无大粒 度业务对象设计开发的足够经验.
2012/3/17
软件工程导论
32
CORBA
CORBA是对象请求代理(ORB)的国际 标准-用于管理分布式对象间通信的中间 件. 分布式计算需要2个层次中间件的支持:
2012/3/17
软件工程导论
36
CORBA 对象
CORBA 对象也将对象看成是对属性和服务的封装. 必须有独立的接口定义,用接口定义语言来描述, IDL很类似于C++. 有从IDL到编程语言的映射 (C++, Java, etc.). 因此,使用不同语言写的对象能相互通信.
2012/3/17
软件工程导论
软件工程— 第十二章分布式系统架构
2012/3/17
软件工程导论
1
目标
讨论几种分布式系统架构的优点和缺点 讨论客户/服务器和分布式对象架构 描述ORB(对象请求代理)和CORBA标准的基本原 理 介绍分布式计算中两种新的体系结构:对等体系结 构和面向服务的体系结构.
2012/3/17
软件工程导论
2
2012/3/17
软件工程导论
35
CORBA标准
应用对象的对象模型
CORBA 对象模型也将对象看成是对属性和服务的封 装, CORBA 接口使用标准的、语言无关的接口定义 语言IDL。
对象请求代理,负责对象服务请求的管理. 一组通用的对象服务,这些服务是许多分布 式应用普遍需要的. 一组通用的组件,这些组件是建立在基本服 务之上的.
2012/3/17
软件工程导论
9
多处理机体系结构
简单的分布式系统模型. 系统由许多不同的进程组成,这些进程可以 在不同的处理器上运行. 在大型实时系统中比较常见. 进程在处理器上的分配可以是预先定义的, 也可以由分配器动态分配.
2012/3/17
软件工程导论
10
多处理器交通管制系统
2012/3/17
2012/3/17
软件工程导论
29
数据挖掘系统(超市数据)
2012/3/17
软件工程导论
30
案例分析
系统的逻辑模型不是一个服务提供模型,这 与数据管理服务区分。 允许被访问的数据库的数量增加而不会使系 统中断. 允许通过增加新的集成器来对新的数据关系 类型进行挖掘.
2012/3/17
软件工程导论
2012/3/17
软件工程导论
26
分布式对象体系结构
2012/3/17
软件工程导论
27
分布式对象体系结构的好处
允许系统设计者延迟关于服务在哪里以及如何提供 方面的决策. 是一个非常开放的体系结构,允许新的资源根据需 要增加进来. 系统具有很好的柔性和可伸缩性.通过不同对象或者 复制对象提供相同服务缓解服务负担. 通过对象在网络上的迁移对系统进行动态配置成为 可能,改善系统性能.
2012/3/17
软件工程导论
44
P2p 架构模型
逻辑网络架构
分散式体系结构 半集中式体系结构
应用架构 集中的网络架构
2012/3/17
软件工程导论
45
分散式p2p 体系结构
2012/3/17
软件工程导论
46
半集中式 p2p 体系结构
软件工程导论
13
客户机/服务器网络中的计算机
2012/3/17
软件工程导论
14
应用分层
表示层
考虑的是系统用户计算的结果表示和收集用户输 入。
应用处理层
考虑的是特定应用功能的提供。
数据管理层
考虑的是系统数据库的管理。
2012/3/17
软件工程导论
15
应用分层
2012/3/17
软件工程导论
16
瘦/胖客户端
软件工程导论
11
客户/服务器体系结构
应用程序被建模成一组服务,这组服务由服 务器提供,并由客户机来使用. 客户机知道服务的存在,而服务器通常不需 要知道客户机. 客户机和服务器是不同的进程 进程和处理器之间没必要非得1:1映射.
2012/3/17
软件工程导论
12
一个客户/服务器系统
2012/3/17
21
三层体系结构
在三层体系结构中,应用分层中的每一层 (表示,应用处理,数据管理)都是逻辑上 独立的进程。. 比瘦客户端性能更好,比胖客户端更易管理. 一个伸缩性很好的体系结构,随着请求的增 加,可以引入额外的服务器.