[工学]15架构模式.pptVIP

  • 3
  • 0
  • 约3.73千字
  • 约 50页
  • 2018-02-28 发布于浙江
  • 举报
[工学]15架构模式

Pattern: Blackboard Pattern: Master-Slave 主控模块故障,整个系统故障 主控模块将任务划分为几个同等的子任务 从属之间相互独立 从属之间并行工作 问题是可以分解的 应用领域: 容错 并行计算 计算准确性 Pattern: Master-Slave 优点: 可互换性和可扩充性 事务分离 效率 不足: 可行性 对机器依赖性 难以实现 可移植性 Pattern: Pipe-Filter Pattern: Pipe-Filter 管道和过滤器体系结构模式,为处理数据流的系统提供了一种结构 每个处理步骤封装在一个过滤器组件中 数据通过相邻过滤器之间的管道传输 管道处理缓冲和同步 重组过滤器可以建立相关系统族 举例: 编译器 Unix 内核命令 Pattern: Pipe-Filter Pattern: Pipe-Filter Pattern: Pipe-Filter 优点: 通过过滤器交换增加了灵活性 通过重组增加了灵活性 过滤器组件的重用 并行处理提高效率 不足: 共享状态信息或者昂贵或者不灵活 并行处理获得的效率往往只一种假象 数据转换额外开销 错误处理 Pattern: Broker Pattern: Broker 代理者结构模式可以用于构建带有隔离组件的分布式软件系统,该软件通过远程服务调用进行交互。 代理者组件负责协调通信 转发请求、传送结果和异常 服务器将他们的服务(属性和操作)发布给一个代理 客户端通过一个代理请求服务器处理 代理将请求发送给一个合适的服务器处理 Pattern: Broker 允许动态改变、添加、删除和重新发布 对于开发者来说,代理是透明的 请求需要有标准的表示法 当两个代理者互操作时,实现细节可通过网桥来隐藏 举例: 公共对象请求代理体系结构(CORBA),处理异构系统上分布式对象的面向对象技术 Web services Pattern: Broker Pattern: Peer-2-Peer Pattern: Peer-2-Peer 对称的 客户机-服务器模式 客户机向服务器请求服务 服务器通知客户机特定的事件 任何一个节点都可以扮演客户机或者服务器的角色 可以动态的交换角色 举例: 多用户应用 P2P 技术 Pattern: Event-Bus Pattern: Event-Bus 事件源将消息发布到总线上的特殊通道上 事件监听者订阅通道上的消息 监听者监听有效消息 消息是异步的 通路可以是固定的 Pattern: Blackboard Pattern: Blackboard 黑板体系结构模式对于无确定性求解策略的问题比较有用。 黑板模式中,有几个专用子系统收集其知识,以建立一个可能的部分解或近似解。 举例: 语音识别 所有组件共享数据存储(黑板) 组件生成新的数据更新到黑板 组件监视黑板上的数据 利用匹配模式寻找特定的数据 Pattern: Blackboard Pattern: Blackboard 优点: 对可更改性和可维护性的支持 可重用的知识源 支持容错性和健壮性 不足: 测试困难 不能保证有好的求解方案 难以建立一个好的控制策略 低效 昂贵的开发工作 缺少对并行机制的支持 This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY. ? 2001 Microsoft Corporation. All rights reserved. Architecture Patterns 模式 很多系统的解决方案都比较类似 解决方案的共同点是什么? 区别在何处? 用到哪些特殊的方法? 如何制定一个特殊的方法? Architecture, Design and Implementation 表示软件系统的基本结构化组织图式。 提供一个用于细化软件系统的子系统或组件,或它们之间关系的图式。 模式类别 体系结构模式 可作为具体软件体系结构的模版。 它们规定一个应用的系统范围的结构特性,以及对其子系统的体系结构施加的影响。 体系结构模式的选择是开发一个软件系统时的基本设计决策。 模式类别 设计模式 软件体系结构的子系统,以及它们之间的关系。通常由几个更小的体系结构单元构成。 中等规模的模式。 规模上比体系结构模式小,但又独立于特定编程语言。 设计模式的应用对软件系统的基础结构没有影响,但可能对子系统的体系结构有所影响。 提供分解更复杂的服务或组件的结构,以及它们之间的合作。 模式类别 惯用法 处理特定设计问题的实现 代表最低层模式,关注设计和实现方面 针对具体语言,捕获现有的编程经验

文档评论(0)

1亿VIP精品文档

相关文档