软件体系结构课件(第六课)其它常见类型的体系结构风格.pptVIP

软件体系结构课件(第六课)其它常见类型的体系结构风格.ppt

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
体系结构风格 The Blackboard Model Knowledge Sources 把问题分成几个部分,每个部分独立计算 响应黑板上的变化 向黑板中添加知识 松耦合 Blackboard Data Structure 包含解域的全部状态 知识源互相作用的唯一媒介 其中的知识一般以层次的形式组织 Control 让知识源随机的响应事件 完全由黑板驱动,决策解决问题的步骤 一般用于: 专家系统(没有现成、直接的解的情况下) 黑板中的知识可能相互矛盾或者有错误 Data-centered / shared data Implies that data is at the centre of the architecture either databases, web-server systems or blackboard systems. Other style… Client-Server Style 适用于这样的应用系统: 它的数据和处理分布在一定范围的多个构件上, 构件之间通过网络连接。 简单的客户机/服务器系统结构中,应分成两部分。客户机负责用户输入和展示,服务器则处理低层的功能,例如数据库的运作等。 如果一个系统被划分为两类不同的但相互联系的组成部分,其中一方提出对信息或服务的请求,而另一方提供这种信息或者服务,那么这种体系结构就可看作是一种客户机/服务器模型。 2-tier客户机/服务器结构 客户程序直接访问数据库,因而每一台客户机都必须安装数据库驱动程序,增加了系统安装与维护的工作量。 由于数据库由众多的客户程序直接访问,造成系统数据的完整性与安全性难以维护。 两层的结构可扩展性较差,由于客户端组件含有数据库访问功能,对软件系统的业务逻辑、数据库访问,甚至数据库本身的任何修改常常导致要求在所有客户机上重新部署客户端组件。 Client/Servers 表示一种把客户应用程序和它们使用的服务分离开的系统视图。 一种基于功能的分解。 Component: server(服务器组件) client (客户组件) Connector: 某种进程间的通信机制,通常是基于RPC的交互协议; 请求-应答的非对称形式。 Server组件 说明 通信一般是成对的,且由客户组件发起 理想情况下,这种访问是透明的,即客户和服务器可以运行在同一台机器上,也可以跨进程、跨机器运行。 是编程语言中过程/函数/方法调用的一种泛化 Client和Server都是软件的组件,而非两台机器 例子: 远程文件系统,客户端向网络上的文件服务器请求并取得所需文件。数据库服务器接收客户发送的sql请求。 C/S模型和socket概念 Socket编程:使用tcp/ip协议或者udp协议与网络中的其它计算机进行通信。一个server多个client的情况;为了区分应用程序(client),引入“端口”的概念,每个端口有一个16位的标识符,称为端口号。端口号和主机的ip地址合起来,就构成了套接字socket,它能在全网范围内唯一标示某个主机的某个端口,也即套接字能唯一标识某个应用程序的位置。 Tcp/ip协议也采用了client/server模型,使用tcp/ip协议的程序分为两类。客户程序一般可以任意选择其进行通信的端口的端口号,而服务程序往往使用较固定的端口号。客户程序如要使用某台主机相应的服务,就只要往该服务对应的套接字上发送数据即可。 Multi-databases Broker风格(代理风格) 优点 有利于分布式的数据组织 构件间位置透明,客户和服务器都不用考虑对方的运行位置 具有良好的可扩展性,易于对服务器进行修改、扩展或增加服务。 C2风格 C2风格 C2风格 是一种基于构件和消息的体系结构风格 是一种层次网络 某一构件只能感知层次高于自己的构件所提供的服务,而不能感知层次比自己更低的构件的服务 C2风格主要用于具有图形化用户界面的应用程序 C2风格中的构件 对话模块接收所有的通知和请求,并将它们映射到内部对象模块的操作。 域转换器把构件的请求转化为接收方能够接收的特定形式,同时也把通知转化为构件能够理解的形式。 当内部对象的状态发生改变时,内部对象会向下发送一个通知。下层构件的对话模块会对此做出反应,并在适当的情况下调用其自身的内部对象模块。 C2风格 有以下几个特点: (1)组成规则: C2也是以构件和连接件为基础的。C2风格中定义了构件和连接件的顶端和底端。 构件的顶端与连接件的底端相连接 构件的底端与连接件的顶端相连接 对连接到某个连接件上的构件或连接

文档评论(0)

178****9325 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档