分布式系统第二章.ppt
《分布式系统第二章.ppt》由会员分享,可在线阅读,更多相关《分布式系统第二章.ppt(58页珍藏版)》请在三一办公上搜索。
1、第2章 分布式系统体系结构,东北大学信息学院于 戈2011年9月,2011-9-14,计算机软件所 于戈,2,2.1 体系结构的样式2.2 系统体系结构2.3 体系结构与中间件2.4 自主管理2.5 客户/服务器模型,第二章 主要内容,2011-9-14,计算机软件所 于戈,3,软件体系结构(Software Architecture)软件的组件,以及组件之间的相互关系 软件体系结构的要素 组件(component):模块单元,能提供良好的接口 连接器(connector):实现组件间通信的机制 软件体系结构的样式 如何表示一个体系结构 常用的有4种,2.1 体系结构的样式,2009-9-14
2、,计算机软件所 于戈,4,系统由自上而下的不同层次的组件组成;只有相邻的层次可以通信;请求消息自上而下,响应自下而上。,层次型体系结构,第N层,第N-1层,第2层,第1层,2011-9-14,计算机软件所 于戈,5,基于对象模型 每个组件对应一个对象;组件之间通信通过远程方法调用(RMI)实现;,面向对象的体系结构,2011-9-14,计算机软件所 于戈,6,组件间的通信,通过基于一个公用的存储(如共享的分布式文件系统)实现 例如,基于Web的分布式系统,组件使用共享的基于Web的数据服务,以数据为中心的体系结构,2011-9-14,计算机软件所 于戈,7,组件间的通信,通过事件(可带有数据)
3、的传播实现;例如,发布/订阅(publish/subscribe)系统,以事件为中心的体系结构,组件,组件,传送 发布,事件总线,组件,组件,组件,共享(持久)的数据空间,传送 发布,2011-9-14,计算机软件所 于戈,8,系统体系结构(System Architecture)软件体系结构的具体实例 集中型体系结构 客户/服务器模型 服务器:实现特定服务的进程 客户:向服务器提出请求、等待答复的进程 请求/答复模式,2.2 系统体系结构,2011-9-14,计算机软件所 于戈,9,层次型C/S体系结构,用户接口层、处理层、数据层例:搜索引擎,2011-9-14,计算机软件所 于戈,10,多
4、层C/S体系结构,瘦客户/胖服务器:用户接口简单,但后端负载重胖客户/瘦服务器:能提高性能,但管理困难,客户机,服务器,2011-9-14,计算机软件所 于戈,11,三层C/S体系结构举例,用户接口应用服务器数据库服务器,2011-9-14,计算机软件所 于戈,12,新型体系结构,垂直分布:不同功能的分布水平分布:相同功能的复制对等型(peer-peer)分布,水平分布的Web服务器,负载平衡、容错等,2011-9-14,计算机软件所 于戈,13,P2P技术,从C/S模式到P2P模式,引自:中科院计算所罗杰文 Peer to Peer 综述,2011-9-14,计算机软件所 于戈,14,P2P
5、技术,P2P 应用文件内容共享和下载,例如Napster、Gnutella、eDonkey、eMule、Maze、BT等;计算能力和存储共享,例如SETIhome、Avaki、Popular Power等;协同与服务共享平台,例如JXTA、Magi、Groove等;即时通讯工具,包括ICQ、QQ、Yahoo Messenger、MSN Messenger等;P2P通讯与信息共享,例如Skype、Crowds、Onion Routing等;网络电视:沸点、PPStream、PPLive、QQLive、SopCast等。,2011-9-14,计算机软件所 于戈,15,P2P技术,覆盖网络(over
6、lay network):建立在另一个网络上的网络,属于应用层网络,面向应用层的,不考虑或很少考虑网络层,物理层的问题。P2P网络是建立在Internet之上一种覆盖网络。P2P网络的拓扑结构 集中型(Centralized Topology);分散型无结构拓扑(Decentralized Unstructured Topology);分散型结构化拓扑(Decentralized Structured Topology,也称作DHT网络);半分散型拓扑(Partially Decentralized Topology)。,2011-9-14,计算机软件所 于戈,16,P2P网络的拓扑结构,集中
7、型拓扑结构 例,MP3共享软件Napster,通过一个中央索引服务器保存所有Napster用户上传的音乐文件索引和存放位置的信息。存在问题中心节点的单点失效中心节点的维护成本可伸缩性,2011-9-14,计算机软件所 于戈,17,P2P网络的拓扑结构,分散型无结构拓扑结构 例,Gnutella协议。基于完全随机图的Flooding搜索算法。存在问题不能保证性能网络带宽的消耗 非常大可伸缩性差,2011-9-14,计算机软件所 于戈,18,P2P网络的拓扑结构,覆盖网络构造算法(Gossip-based protocols)关于所有节点的表,称为全局视图(total view)。每个节点维护一个
8、部分视图(partial view),含有c个邻接点的列表。表项:=节点之间定期交换表项。由主动线程(可主动发起通信)和被动线程完成。节点的加入与任意一个已知的节点进行视图交换节点的删除可自行离开,无需通知其他节点。当其他节点发现某节点P不再响应时,将其从表中删除,2011-9-14,计算机软件所 于戈,19,P2P网络的拓扑结构,主动线程和被动线程的执行步骤,do forever receive bufferp from p if pull then/0 is the initial age buffer(MyAddress,0)view.permute()move oldest H ite
9、ms to end of view buffer.append(view.head(c/2-1)send buffer to p view.select(c,H,S,bufferp)view.increaseAge(),do forever wait(T time units)pview.selectPeer()if push then/0 is the initial age buffer(MyAddress,0)view.permute()move oldest H items to end of view buffer.append(view.head(c/2-1)send buffer
10、 to p else/empty view to trigger response send(null)to p if pull then receive bufferp from p view.select(c,H,S,bufferp)view.increaseAge(),(a),(b),2011-9-14,计算机软件所 于戈,20,P2P网络的拓扑结构,分散式结构化拓扑结构 采用分布式散列表(Distributed Hash Table,简写成DHT)技术来组织网络中的结点。加密散列函数,将一个对象的名字或关键词映射为128位或160位的散列值DHT是一个由广域范围大量结点共同维护的巨大散
11、列表。散列表被分割成不连续的块,每个结点被分配给一个属于自己的散列块,并成为这个散列块的管理者。Tapestry,Pastry,Chord和CAN,2011-9-14,计算机软件所 于戈,21,P2P网络的拓扑结构,分散式结构化拓扑结构 例:MIT的Chord 系统网络结点按照一定的方式分配一个唯一结点标识符(Node ID)通过散列运算为对象产生一个唯一的对象标识符(Object ID)分布式查找协议,将指定的关键字(Key)映射到对应的结点(Node)时间复杂性O(log(N),2011-9-14,计算机软件所 于戈,22,P2P网络的拓扑结构,分散式结构化拓扑结构 例:CAN 系统将(k
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 分布式 系统 第二

链接地址:https://www.31ppt.com/p-6094360.html