欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    软件体系结构复习内容word版本.docx

    • 资源ID:17301414       资源大小:415.27KB        全文页数:29页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    软件体系结构复习内容word版本.docx

    1、软件体系结构复习内容word版本软件体系结构复习内容软件体系结构 第 5 讲: 体系结构风格(一)内容简介: 概述 管道/过滤器风格 仓库风格和黑板风格 分层系统风格 客户服务器风格 软件体系结构风格(模式)定义: 一些特定的元素按照特定方式组成的结构, 它有利于解决上下文环境里的特定问题。描述了一族系统,他们拥有一个类似的结构定义了构件(如客户端、服务器)的字典刻画了构件的主要任务和交互方式 软件体系结构风格与设计模式等的区别程序设计样式设计模式体系结构风格重点开发原则、可实现性重用、概念完整性重用、概念完整性抽象层次程序构件体系结构使用直接可用直接可用有约束和指导作用 体系结构风格作用促进

    2、设计重用 带来代码重用 使系统易于理解 有利于系统的互操作性 体系结构风格分类 固定术语类 管道和过滤器的风格 仓库风格和黑板风格 分层系统风格 客户服务器风格 数据抽象和面向对象风格 基于事件的风格 模型-视图-控制器风格 解释器风格(虚拟机风格) 参考模型类 编译器的顺序参考模型和并行参考模型 信息系统的参考模型管道/过滤器风格 构件: 过滤器(对数据进行处理) 连接件: 管道(传输数据)过滤器过滤器过滤器过滤器过滤器过滤器图5-1 管道和过滤器风格体系结构管道管道管道管道管道管道管道 应用: Unix 的Shell程序 cat file |grep xyz |sort |uniq out

    3、 编译器 信号处理 编译器从逻辑上可以分成若干阶段,每个阶段把源程序从一种表示变换成另一种表示 优点: 允许构造松散结构的系统 过滤器的重用很方便 易于扩展和修改 缺点: 导致批处理风格的系统设计 交互性不强 同步比较困难 应用范围比较狭隘仓库风格和黑板风格 构件: 中央数据结构(当前状态) 独立构件(对数据进行处理) 运作方式: 主动式:构件自己决定操作 被动式:由数据仓库的当前状态来决定调用构件(黑板系统) 黑板系统三大部分 知识源 黑板数据结构 控制器 应用: 语音识别 模式识别 三维分子结构建模 优点:便于多客户共享大量数据,它们不用关心数据何时有的、谁提供的、怎样提供的; 既便于添加

    4、新的作为知识源代理的应用程序,也便于扩展共享的黑板数据结构。 缺点:不同的知识源代理对于共享数据结构要达成一致,而且,这也造成对黑板数据结构的修改较为困难要考虑到各个代理的调用; 需要一定的同步/加锁机制保证数据结构的完整性和一致性,增大了系统复杂度。分层系统风格 一个分层风格的系统按照层次结构组织,每一层向它的上层提供服务。内核层用户基本功能可用系统过程调用不同元素组合图5-3 分层系统的体系结构 应用:OSI-ISO七层模型 操作系统 数据库系统 TCP/IP网络协议 优点:由于对层次的邻接层数目进行了限制,所以系统易于改进和扩展; 每一层的软件都易于重用,并可为某一层次提供多种可互换的具

    5、体实现; 分层系统所支持的设计体现了不断增加的抽象层次,这样,一个复杂问题的求解被分解为一系列递增的步骤。 缺点:系统的分层可能会带来效率方面的问题; 应当如何界定层次间的划分是一个较为复杂的问题。 构件:客户构件 服务器构件 连接件:进程间通信机制 两种特殊的客户服务器风格 代理 服务器的服务交给一个代理,由代理来向客户提供服务 代表性应用:CORBA SOAP WebService UDDI P2P 客户服务器对称,既是客户又是服务器 代表性应用: BT, Emule, Kazza 应用: 大量的信息管理系统 优点:有利于分布式的数据组织; 构件间是位置透明的,客户和服务器都不用考虑对方的

    6、运行位置; 便于异质平台间的融合与匹配,客户和服务器可以运行不同操作系统; 具有良好的可扩展性,易于对服务器进行修改、扩展或增加服务器; 缺点:客户必须知道服务器的访问标识,否则很难知道有哪些可用服务。 分层系统风格实例 数据抽象和面向对象风格 基于事件的风格 模型-视图-控制器风格 解释器风格(虚拟机风格) 信息系统的参考模型 体系结构风格的选择分层系统风格实例 系统描述:劳动和社会保险管理信息系统 系统的功能是完成劳动和社会保险的主要业务管理,即“五保合一”管理,包括养老保险、医疗保险、劳动就业和失业保险、工伤保险、女工生育保险。整个业务流程十分复杂,牵涉面相当广泛。例如,整个系统要与银行

    7、、企业、事业机关、医院、财政部门、税务部门、邮局等多种单位建立连接关系。 核心层 通用打印基类 通用查询基类 权限验证基类 通用数据库连接基类 字符处理基类 码表维护基类 数据转换基类 基层单位管理平台 业务管理系统 扩展应用层数据抽象和面向对象风格 构件: 数据和操作的复合体对象 连接件: 函数或过程调用 应用: COM, CORBA等 优点: 隐藏实现细节 继承性,有利于重用 缺点: 过程调用依赖于对象标识的确定 不同对象的操作关联性差基于事件的风格(隐式调用) 构件: 模块 连接件: 对事件的显式/隐式调用 应用: 各种基于事件响应的Windows程序 优点: 事件广播者不必知道哪些部件

    8、会被事件影响 有利于软件复用,任何构件均可以注册其相关事件 系统演化、升级比较简单 缺点: 构件的调用不是主动的 系统正确性难以推理模型-视图-控制器风格 3种构件 视图:负责显示信息 模型:负责维护数据,是应用程序的核心 控制器:负责与用户的交互用户视图控制器模型问题领域的应用程序查看使用操作更新图5-7 模型视图控制器风格的体系结构 应用: Visual Studio提供的文档视图结构 各种可以更换皮肤的软件 文档 数据容器 视图: 查看数据的窗口或是和数据发生交互的窗口。 文档/视图的核心是四个关键类: CDocument(或 COleDocument)类支持用于存储或控制程序数据的对象

    9、,并为程序员定义的文档类提供基本功能。文档表示数据单元,用户一般用“文件”菜单上的“打开”命令打开它,并用“文件”菜单上的“保存”命令保存它。 CView(或它的许多派生类之一)为程序员定义的视图类提供基本功能。视图被附加到文档并在文档和用户之间充当中介:视图在屏幕上呈现文档的图像并将用户输入解释为对文档的操作。视图还为打印和打印预览呈现图像。 CFrameWnd(或其变体之一)支持在文档的一个或多个视图周围提供框架的对象。 CDocTemplate(或 CSingleDocTemplate 或 CMultiDocTemplate)支持一个对象,该对象协调给定类型的一个或多个现有文档并对创建该

    10、类型的正确文档、视图和框架窗口对象进行管理。 文档视结构带来的好处主要有: 首 先是将数据操作和数据显示、用户界面分离开。这是一种“分而治之”的思想,这种思想使得模块划分更加合理、模块独立性更强,同时也简化了数据操作和数据显 示、用户界面工作。 MFC在文档/视结构上提供了许多标准操作界面,包括新建文件、打开文件、保存文件、打印等,减轻了用户的工作量。 支持打印预览和电子邮件发送功能。 以下情况不宜采用文档视结构: 不是面向数据的应用或数据量很少的应用程序,不宜采用文档/视结构。如一些工具程序包括磁盘扫描程序、时钟程序,还有一些过程控制程序等。 不使用标准的窗口用户界面的程序,象一些游戏等。

    11、优点: 简化系统设计, 界面友好 缺点: 适用范围比较狭隘,局限在用户界面软件开发领域解释器风格(虚拟机风格) 构件; 被解释程序 执行引擎 执行引擎的当前状态 被解释程序的当前状态 连接件: 过程调用 存储器访问 应用: 各种虚拟机,如Java虚拟机 各种脚本语言的解释器,如Perl等 优点: 应用程序的可移植性和程序设计语言的跨平台能力 对硬件进行仿真 缺点: 效率比较低信息系统的参考模型体系结构风格的选择问题描述: 仓库风格 优点: 数据共享适合采用高效的表达方式 计算分布于独立模块,符合呈现问题的自觉思维习惯 缺点: 不易修改,共享数据表示将影响到所有模块 数据抽象风格 优点: 易于修

    12、改,数据表示和算法可以在单独模块修改而不会对模块间产生相互影响 更好地支持重用 缺点: 不易更改系统功能,除非打破模块界限或增加新的模块 修改现存模块将导致模块简洁性和完整性受到破坏 管道过滤器风格 优点: 维护了一种直觉的处理流程 更好地支持重用,容易加入新功能 缺点: 很难支持与用户的交互 空间使用效率低,每个过滤器必须拷贝全部数据到它的输入口Lecture 7. Domain Specific SA Style-P2P architecture1. Problems with traditional C-S architecture2. Introduction to P2P3. Bas

    13、ic Knowledge of Peer-to-Peer Architecture4. Hybrid P2P architecture5. Pure P2P Architecture6. Pure Peer-to-Peer architecture: Gnutella7. Peer node Architecture, 每个节点的结构8. Data Transfer Mechanism from Node to Node9. Some Issues of Further P2P Evolution . Problems with traditional C-S architectureProb

    14、lem 1: 很难在海量信息中找到有价值的东西. First, no single search engine can locate and catalog the ever-increasing amount of information on the Web in a timely way Google claims that it searches about 1.3x108 web pages Finding useful information in real time is increasingly difficultProblem 2: 互联网的应用不平衡. Second, al

    15、though miles of new fiber have been installed, the new bandwidth gets little use if everyone goes to Yahoo and eBay for content Hot spots just get hotter while cold spots remain cold Internet has not been utilized efficiently Resources have not been used efficientlyProblem 3: 服务器的压力. Pressure: As th

    16、e number of users increases, there is a higher demand for computing power, storage space, and bandwidth associated with the server-side Problem 4:可靠性是个问题 Reliability (可靠性) The whole network will depend on the highly loaded server to function properly If a server is down, then the client may suffer h

    17、eavy losesC/S1. P2P enables any network-aware device to provide services to another network-aware device2. A peer in P2P network acts as both a client and a server. Basic Knowledge of Peer-to-Peer ArchitecturePeer-to-Peer: the Third Generation of the Internet!What is Peer-to-Peer (P2P)? Peer-to-Peer

    18、 computing is described as the sharing of computer resources and services by direct exchange between systems. 共享计算机资源 These resources include a) the exchange of information, 信息交换b) processing cycles, 处理能力 (过程,周期)c) cache storage, and 高速缓冲存储器存储d) disk storage for files. 硬盘存储Advantage of P2P-P2P 结构的优点

    19、a) It allows economical clients (desktop computers, etc) to take advantage of their collective power to benefit the entire enterprise (发挥集体优势)b) Clients in a P2P network are also servers (大家都是客户端,大家都是服务器)c) The load on servers in the traditional sense has reduced (服务器压力减轻了4. hybrid P2P architecture

    20、(杂交的P2P结构) 客户互动机制. The interaction between clients by referencing a Directory Server Client A issues a request to the Directory server 客户A发一个请求给目录服务器 The Directory server then uses the lists it keep to find the peer that contains the content that Client A interests in and tells Client A 目录服务器找到客户A感兴

    21、趣的服务器 Client A can then directly interact with that client, in this case Client D which services his request. 客户A 和那个客户直接互动. Detailed description of How one peer interacts with another peer Step 1. When the user connects to the network, the peer first attempts to connect to a directory server (首先连接到

    22、目录服务器) to locate each of the users buddies and 寻找朋友 to register the location of the user that is now coming on-line 登记在线的用户的地址 Note: If a directory service is not available or if information is not available for a particular buddy, the peer first falls back on cached knowledge about the locations of

    23、 buddies (如果找不到目录服务器或者朋友信息,到缓存去找) by deriving from previous contact with a directory service, previous contact with those buddies, or information entered by the user. Cache: 高速缓冲存储器 Step 1 (cont) Once peers are located, they can provide information about their capabilities and the services they prov

    24、ide. (找到了朋友,就知道了他们的信息) Step 2. Opening the lines of communication (开通通讯线路) After it determines their locations, the peer then attempts to establish contact with all of the buddies that it has found. The peer can use a user interface for contacts The user interface provides information to the user ab

    25、out what other users are on-line. Pure P2P ArchitectureCharacteristics of Pure P2P Architecturea) Peers can act as clients and servers and have the same capability as its neighbors.b) It has no central servers. It has every node as a Peer and has no central router.c) There are two routing structures

    26、, one is a distributed catalogue (分布式目录) and the other direct messaging. 两台计算机建立联系的过程: 1. Send message to all peers: who has “200 Days on the Moon” 2. Got answer: I have 3. Build direct connection 什么是纯的P2P模型? Gnutella, a Pure P2P Model is a file sharing application and protocol: the end hosts join G

    27、nutella by connecting to existing end hosts already on the Gnutella. How Gnutella works? 用互相传送消息的方法,实现文件共享 To facilitate file sharing, messages are sent between end hosts. How Gnutella works? 怎样查询广播和回答? 广播要查询的文件 Queries for files are broadcasted on the overlay network, and 回答被发送到初始的发广播的那个peer Replie

    28、s are routed back to the host that originally generated the query through the overlay network. 工作步骤-Steps:1. Node A is first connected to the network.2. It Pings to the other Nodes (B and C) to discover new nodes on the network.3. A pong message is sent as a reply to a ping and provides information

    29、on a network node, including IP address, port number, and number of files shared.4. A query message is used to search for files shared by other nodes on the network. It contains a query string and a minimum requested link speed.5. A query reply message contains a list of one or more files which match a given query, the size of each file, and the link speed of the responding node.6. A push message is used to upload file to clients behind a firewall who can not download files themselves.Note: For the c


    注意事项

    本文(软件体系结构复习内容word版本.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开