软考系统架构设计师教程学习笔记第十章

系统架构设计师 责任编辑:长颈鹿 2016-07-11

添加老师微信

备考咨询

加我微信

摘要:软考系统架构设计师属于软考中的一项高级资格考试,考试分综合知识、案例分析和论文3个科目。系统架构设计师考试作为一项高级资格考试,有一定的考试难度,那么该如何备考才能顺利通过考试呢?面对系统架构设计师教程无从下手的同学,希赛软考学院为您准备了第十章学习笔记,希望对您的学习有所帮助。

    >>>>点击进入了解系统架构设计师网络课堂 

>>>>点击进入了解系统架构设计师培训视频

    >>>>点击进入了解系统架构设计师在线辅导

    软考系统架构设计师属于软考中的一项高级资格考试,考试分综合知识、案例分析和论文3个科目。系统架构设计师考试作为一项高级资格考试,有一定的考试难度,那么该如何备考才能顺利通过考试呢?面对系统架构设计师教程无从下手的同学,希赛软考网为您准备了第十章学习笔记,希望对您的学习有所帮助。

      10.1 OMG方式

      对象管理组OMG,通过规范化对象开放市场的所有层次上的互操作性。

      10.1.1对象请求代理

      CORBA的主要目标就是使用不同语言、不同实现、不同平台能进行交互。

      CORBA三个基本部分:一套调用接口、对象请求代理ORB、一套对象适配器。

      10.1.2公共对象服务规范

      两类服务:一类服务应用于企业计算系统。一类服务应用于细粒度的对象操作,但目前这些服务的实用价值较差。

      支持企业分布式计算的服务

      1.命名服务、交易器服务

      命名服务允许任意地给对象赋予一个名字,这个名字在其所属的命名语境中是。

      命名语境所形成的层次结构,使得所有的名字形成名字树。

      交易器服务允许给对象赋予一个复杂的描述,从而允许客户基于该描述来定位所需的对象。

      搜寻结果往往是满足查询条件的一组对象列表。

      2.事件服务、通告服务

      事件服务允许定义那些从时间生产者被发送到时间消费者的事件对象。

      信息只能从生产者流向消费者,事件必须通过事件通道传播,事件可以具有类型,而通道可以根据类型过滤事件。

      事件通道支持“推”“拉”两种方式的事件通告模型。

      通告服务为事件服务增加了几个重要的特征——服务质量QoS规范和管理。

      3.对象事务服务

      对象事务服务OTS,是建立分布式应用最重要的服务之一。

      OTS实现必须支持平坦事务,而嵌套事务是可选的。

      在基于构件的系统中,嵌套事务似乎不可避免。

      平坦事务在构件系统中的价值有限,实际上,现有的主流事务中间件也不支持嵌套事务。

      4.并发控制服务

      支持对象资源进行加锁、解锁。

      锁必须依赖于事务的语境或其他语境才能获得。

      读锁、写锁、升级锁。

      读锁允许多个客户同时执行读操作,写锁允许一个客户写操作,升级锁是可以升级为写锁的读锁支持互斥读。

      每个受保护的资源都拥有一个锁集合。锁集合不是事务型就是非事务型,并可与其他锁集合建立关联。

      5.生命周期服务

      支持创建、复制、移动、删除CORBA对象,及其相关的对象组。

      包含关系支持嵌套复制。

      6.外部化服务

      支持对象网和对象流之间的双向映射。对象网外部化后再内部化意味着创建该对象网副本。

      外部化服务并不保证引用的完整性,仅保留同时外部化的对象之间的引用。

      对象必须实现Streamable接口才能被外部化。

      7.属性服务

      允许将任意的属性与对象关联起来,被关联的对象必须实现ProperySet接口。

      8.对象查询服务

      依靠属性定位对象。

      9.时间服务

      拥有众多异步时钟的分布式系统固有的误差问题。

      10.1.3 CORBA构件模型

      CORBA对象适配器主要的作用就是在一个ORB和真正接收调用并且返回结果的对象之间进行交互。

      10.2 SUN公司的方式

      Java构件技术的概述

      Java中,编译器会检查Applet代码的安全性,通过了编译器检查的Applet代码不会带来安全隐患。

      由于编译得到的字节码仍然可能被人修改,代码在装载时刻会被再次检查(称为“校验”)。

      运行环境(Runtime Environment,RE)、软件开发工具包(Software Development Kit,SDK)、参考实现。

      运行环境是Java虚拟机和必须具有的J2SE API的实现。

      10.3 Microsoft的方式

      微软选择的是最简单的路线,他没有提出一整套标准;相反,他不断对已有的应用和平台基础进行再工程,这就可以获益于以前的成功技术。

      语言无关性,作为CLR的一条主要原则。

      10.3.1第一个基础关联模型——COM

      COM所定义的一个基础实体是接口。在二进制层面上,一个接口被表示为指向一个接口节点的指针。

      接口节点被指定的部分是置于其内部第一个域的另一个指针,这个指针指向一个过程变量表(或者说,函数指针表)。

      每个COM对象都有IUnknown接口,通常置于COM对象图的顶端。

      他的“真实”名字是他的IID,即00000000-0000-0000-C000-000000000046为了方便,所有接口也有一个可读名。

      根据习惯,可读接口名以字母I开头。与IID不同,可读接口名并不保证是。因此,编程中的接口引用均使用IID。

      IUnknown接口的首要用途是在最抽象的情况下标志COM对象,此时COM对象没有任何特殊功能。

      IUnknown接口只提供对任何COM接口都必须的三个强制性方法。QueryInterface、AddRef、Release,后两个强制性方法被用来控制对象的生命周期。

      类型HRESULT被大多数COM接口的方法用来表示调用成功或失败。QueryInterface表明查询的接口是否被支持。

      每个COM对象都会进行引用计数,引用计数变量被共享使用的情况下,COM对象不能释放接口节点。

      一般这样做没有问题,也是通常的做法。

      某些情况下占用很多资源,可以使用独立的引用计数变量,以便节点可以尽早释放。这种根据需要创建和删除接口节点的技术有时被称作“快速装卸接口(Tear-Off Interface)”

      10.3.2 COM对象重用

      COM不支持任何形式的实现继承。

      COM支持两种形式的对象组装:包含(Containment)和聚集(Aggregation)。

      包含是一个对象拥有指向另一个对象的引用。

      外部对象只是把请求转发给内部对象,所谓转发就是调用内部对象的方法。

      包含能重用内含于其他构件的实现,是完全透明的。

      如果包含层次较深,或者被转发的方法本身相对简单,包含会存在性能上的问题。因此COM定义第二类重用形式,聚集。

      聚集直接把内部对象接口引用传给外部对象的客户,而不是再转发请求。

      保持透明性是很重要的,因为外部对象的客户无法辨别哪个特定接口是从内部对象聚集而来的。

      10.3.3接口和多态

      COM接口可通过(单)接口继承从其他COM接口中派生。

      COM的接口继承与其支持的多态无关。

      接口和版本化,一旦公布,COM接口和他的规范不允许以任何形式改变。

      既解决了语法问题,也解决了弱基类问题。

      IID可用于标志接口中的版本,因为接口总是通过IID被请求。

      CORBA讨论中所提及的传递性版本冲突问题在COM中不会发生。

      构件可以选择实现接口的多个版本,处理方式就像处理别的不同接口一样。

      基于COM的系统能并发支持旧接口和新接口。

      10.3.4 COM对象的创建和COM库

      创建COM类的实例对象时,COM需要把给定的CLSID映射为包含所请求的类的实际构件。COM支持系统注册器,它类似CORBA存储器。

      进程内(inprocess)服务器、本地服务器、远程服务器。

      10.3.5从COM到分布式COM(DCOM)

      代理(Proxy)对象和服务器桩(Stub)对象。

      为支持跨进程或跨机器的透明通信,COM在客户端创建代理对象,在服务器端创建桩对象。

      跨进程传递的接口引用需要被映射为对象引用。

      DCOM将数据整理成平台无关的网络数据表达(NDR)形式。

      10.3.6复合文档和OLE对象

      OLE可被概括为一组预定义的COM接口。

      文档容器和文档服务器。

      文档服务器是提供某种内容模型和显示、操作内容的能力。文档容器没有自己的内容,但可以接受任意文档服务器提供的内容成分。

      许多文档容器也是文档服务器,即是说,他们支持外来的成分,同时也有自己的内容。

      10.3.7.NET框架

      没有原始类型。


    返回总目录;软考系统架构设计师教程学习笔记汇总


    希赛软考网,拥有十四年软考培训经验,希赛网一直坚持自主研发,将丰富的软考培训经验有效融入教程研发过程,自成体系的软考在线题库软考历年真题)、软考培训教材软考视频教程,多样的培训方式包括在线辅导面授、和,使考生的学习更具系统性,辅导更具针对性。采用全程督学机制,,软考平均通过率在全国。

更多资料
更多课程
更多真题
温馨提示:因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!

软考备考资料免费领取

去领取

!
咨询在线老师!