正在加载图片...
·554 北京科技大学学报 2004年第5期 用的算法和诊断方法的伺服程序放在AOM中, 对系统资源的不同占用率,通过各种策略的合理 保证这些算法以最快的速度定位.如果没有在 搭配,同时考虑用户请求的稳定性、实时性和系 AOM中找到相应的伺服程序,在POA中注册的 统资源以及用户请求的数量,最大限度地优化了 伺服程序激活器(ServantActivator)将创建一个较 系统,保证了监测的稳定性和诊断的高效性,同 常用的算法伺服程序的实例并返回它.如果没有 时,使用POA层次模型将系统的功能分发到不同 适合的伺服程序,激活器将产生一个ForwardRe- 的POA中,可以应用户的要求随时扩展系统,如 quest异常.ORB可以将这个异常变成一个LOC- 增加新的诊断方法、增加新的监测设备等,保证 ATION _FORWARD请求,并将请求重定向到具有 了系统的可扩展性 相应伺服程序的POA,如诊断POA2,也就是它的 表4诊断子POA使用的POA策略 子POA.表3列出了诊断POA所使用的POA Table 4 Policy of sub-diagnosis POA 策略 策略 选择的策略值 表3诊断POA使用的POA策略 生存周期策略 PERSISTENT Table 3 Policy of diagnosis POA 线程策略 ORB CTRL MODEL 策略 选择的策略值 对象标识符分配策略 MULTIPLE ID 生存周期策略 PERSISTENT 对象标识符惟一性策略 UNIQUE ID 线程策略 ORB CTRL MODEL 伺服程序保持策略 NON RETAIN 对象标识符分配策略 MULTIPLE ID 请求处理策略 USE SERVANT MANAGER 对象标识符惟一性策略 UNIQUE ID 隐式激活策略 NO IMPLICIT ACTIVATION 伺服程序保持策略 RETAIN 请求处理策略 USE SERVANT MANAGER 3.2远程诊断系统中POA管理线程策略 隐式激活策略 NO IMPLICIT ACTIVATION 在CORBA规范中,POA的线程策略只有两 种形式,即单线程或多线程.即使采用多线程的 在诊断子POA中,实现不常用的高级算法和 模式,当用户数量非常大时,为每个用户的请求 诊断方法,由于具体的算法很多,所以不把方法 创建一个线程无疑会将系统资源消耗殆尽.Bor 的实现放在内存中,选择NON RETAIN作为伺服 land公司推出了VisiBroker,实现了CORBA规范, 程序保持策略,当诊断子POA接到每个请求时, 它提供另外两种线程策略,线程池策略和每会话 调用注册在它上的伺服程序定位器(ServantLoac 线程策略,如图3和图4所示. ator)的perinvoke接口,获得一个适合的诊断方法 对于诊断POA,采用线程池模型(如图3),线 伺服程序,由于这些算法的使用频率很低,这样 程池中定义了线程的最大数目和最大空闲时间. 就找到了系统资源使用和系统效率的最好切合 每当有新请求到来时,系统先检查当前的线程 点.表4列出了诊断子POA所使用的POA策略. 数,如果达到最大值则提示用户等待,直到有空 在这种POA模型的体系结构中,根据不同类 闲的线程出现:如果没有到达最大值,则为这个 型请求的不同要求,如监测和诊断的不同需求和 请求创建新的线程,由于诊断请求比较耗费系统 监听 连接 请求l 请求1 客户应用程序 程 客户应用程序 请求2 请求2 监听 程 连接 客户应用程序2 客户应用程序2 线 请求1 程 请求 浅程池 图3线程池模型 图4每会话线程模型 Fig.3 Thread pooling model Fig.4 Threads-per-session model北 京 科 技 大 学 学 报 年 第 期 用 的算法 和 诊 断方 法 的伺服 程序 放 在 中 , 保 证 这 些 算 法 以最 快 的速 度 定位 如 果 没 有 在 中找 到相 应 的伺 服 程 序 , 在 中注 册 的 伺服 程序 激 活器 将 创 建 一 个 较 常用 的算法 伺服 程 序 的实例 并返 回它 如 果 没有 适 合 的伺 服 程序 , 激 活 器 将 产 生 一 个 异 常 可 以将 这 个异 常 变 成 一 个 场叭 请 求 , 并将请 求 重 定 向到 具有 相应 伺 服 程序 的 , 如 诊 断 , 也 就 是 它 的 子 表 列 出 了诊 断 所 使用 的 策 略 对 系统 资源 的不 同 占用 率 , 通过 各种 策略 的合 理 搭 配 , 同时考 虑 用 户 请 求 的稳 定性 、 实时性 和 系 统 资源 以及 用 户请 求 的数量 , 最 大 限度地优 化 了 系统 , 保 证 了监 测 的稳 定性 和 诊 断 的高效性 同 时 , 使用 层 次模型将 系统 的功 能分 发到 不 同 的 中 , 可 以应 用 户 的要 求 随 时扩 展 系统 , 如 增 加 新 的诊 断方 法 、 增 加 新 的监 测 设 备 等 , 保证 了系 统 的可 扩 展 性 表 诊 断 使用 的 策略 加 比 , 策 略 生 存 周 期 策略 线程策 略 对象标 识 符 分 配 策 略 对象标 识 符惟 一 性策 略 伺服 程 序保持策 略 请 求 处 理 策 略 隐式激活 策 略 选择 的策略值 表 诊 断 子 使用 的 策略 一 策 略 选 择 的策略值 生 存周 期策 略 线程 策 略 对象标识 符分 配 策 略 一 对象标识符惟 一 性策略 」 一 伺服 程序保 持策 略 请求 处 理 策 略 人 隐式激活 策略 一八 邵从 叭 劝订 在诊 断子 中 , 实现 不 常 用 的高级 算法 和 诊 断方 法 , 由于 具体 的算法 很 多 , 所 以不把 方 法 的实现放在 内存 中 , 选择 诬 作 为伺 服 程 序 保 持策 略 , 当诊 断子 接 到每 个 请 求 时 , 调 用 注 册 在 它 上 的伺 服程 序 定位 器 的 接 口 , 获得 一 个 适 合 的诊 断方 法 伺 服 程 序 由于 这 些 算法 的使用 频 率 很 低 , 这 样 就 找 到 了系 统 资源 使用 和 系 统 效 率 的最 好 切 合 点 表 列 出 了诊 断子 所 使用 的 策 略 在这 种 模 型 的体 系 结构 中 , 根据 不 同类 型请求 的不 同要 求 , 如监 测和 诊 断 的不 同需求和 远 程 诊 断 系统 中 管理 线 程 策 略 在 规 范 中 , 的线 程 策 略 只 有 两 种 形 式 , 即单 线程 或 多线 程 即使 采 用 多线 程 的 模 式 , 当用 户 数 量 非 常 大 时 , 为每个 用 户 的请 求 创 建 一 个 线 程 无 疑 会 将 系 统 资源 消耗 殆 尽 公 司推 出 了 , 实现 了 规 范 , 它 提供 另外 两种 线程 策 略 , 线程池 策略和 每会 话 线程 策 略 , 如 图 和 图 所 示 对 于 诊 断 , 采 用 线 程 池 模 型 如 图 , 线 程 池 中定义 了线程 的最 大数 目和最 大 空 闲时 间 每 当有 新 请 求 到 来 时 , 系 统 先 检 查 当前 的线 程 数 , 如 果 达 到最 大值 则提 示用 户 等待 , 直 到有 空 闲 的线程 出现 如 果 没 有 到 达 最 大值 , 则 为这个 请求 创建 新 的线 程 , 由于诊 断请 求 比较耗 费系统 图 线程 池 模型 如 图 每会话线 程模型 一
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有