高级软件工程04irpoa.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
高级软件工程04irpoa

* POA 可移植对象适配器是在服务器语境中的一个可标识实体 每个POA为对象标识提供了一个名空间 并为其它POA(nested or child)提供一个名空间 与POA相关的策略描述了在那个POA中对象实现的特征 Nested POAs为一个服务器中的对象形成了一个层次式的名空间 Policy 策略是一个应用程序的与POA相关的对象 以指定在那个POA中实现的对象共享的特征 本规范定义一些策略,以控制POA的线程模型 以及一些其它与对象管理相关的选项 POA * POA Manager POA管理器是一个封装一个或多个POA处理状态的对象 利用POA管理器上的操作 开发者可以使向相关POA发出的请求被排队或丢弃 开发者也可以利用POA管理器去活POA Servent Manager 服务体管理器是一个可以与POA关联的对象 服务体管理器 负责管理一个对象与特定服务体的关联 并负责决定一个对象是否存在 ORB可以调用服务体管理器上的操作,以激活或去活服务体 POA * Adaptor Activator 一个适配器激活器是可以与POA关联的对象 当一个请求被从目前不存在的子POA收到时 ORB将激活适配器激活器上的一个操作 适配器激活器可以根据命令创建所需的POA POA * ORB是对客户与服务器皆可见的一个抽象 POA是对服务器可见的对象 用户提供的实现被注册在POA中 客户 拥有引用 并向它发出请求 ORB POA 与 实现 共同决定 操作需要调用哪个服务体 并执行调用 (3)模型体系结构 POA * POA * 如果 POA 支持 RETAIN 策略 则它维护一张表(map): 活动对象表(Active Object Map) AOP将对象标识与活动服务体关联起来 每个关联组成了一个活动对象 如果POA包含USE_DEFAULT_SERVANT 策略 则一个缺省的服务体被注册到POA中 相反,如果POA 包含USE_SERVANT_MANAGER 策略 则一个用户编写的服务体管理器被注册到POA中 如果活动对象表未被使用 或者一个请求对应的对象未出现在活动对象表中 POA或者使用缺省的服务器执行请求 或者它调用服务体管理器获取一个服务体来执行请求 如果 RETAIN 策略被使用 则由服务体管理器返回的服务体由活动对象表保持 否则,服务体仅被用于处理一个请求 POA * POA * (4)创建POA 为实现一个需要POA的对象 需要服务器应用程序获取一个POA对象 一个特殊的POA对象,根(root)POA,由ORB 进行管理 并在初始对象名“RootPOA”下 利用ORB初始化接口向应用程序提供 应用程序开发者可以利用根POA创建对象 开发者可以创建新POA: 以允许开发者为新POA声明特定的策略 并提供一个不同的适配器激活器即服务体管理器 也允许开发者划分对象的名空间 因为对象标识的解释与POA相关 开发者可以独立地为多个对象集合控制请求处理 POA * 一个 POA 是 利用父POA上的create_POA 操作 作为一个已经存在POA的子POA创建的 POA对象不是永久性的 ORB不保存POA的任何状态 服务器程序负责创建并初始化合适的POA对象 创建适宜的POA对象 对于跨越多个服务器生命时间的永久对象特别重要 为支持在以前的服务器进程中创建的一个对象引用 应用程序必须重新创建出 创建对象引用的那个POA,以及祖先POA 每个被重新创建的POA必须与以前POA的名字、策略相同 POA * (5)引用创建 对象引用封装了 对象标识信息 以及ORB需要的信息 用以标识并定位与对象关联的服务器以及POA 引用按照下列方式被创建: 服务器应用程序创建引用 调用POA的 create_reference 与 create_reference_with_id 操作 从与POA相关的信息中,或者从传给操作的参数中 在创建对象引用的过程中,它们将抽象的对象活化, 但它不将其与一个活动的服务体关联 POA * 服务器应用程序显式地激活一个服务体 利用 activate_object 或 activate_object_with_id 操作 将其与一个对象标识关联 一旦一个服务体被激活 服务器应用程序可以 利用 servant_to_reference 或 id_to_reference

文档评论(0)

peili2018 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档