关于人工智能图搜索理论对分布式组件应用的性能优化研究
中山大学学报论丛 , 2004 年 第 24 卷 第 3 期
SUN YA TS EN UNIV ERSI TY FORUM , Vol124 No13 2004
关于人工智能图搜索理论对分布式
Ξ
组件应用的性能优化研究
申青松 ,刘丹萍 ,倪 健
()中山大学软件研究所 ,广东 广州 510275
摘 要 : 研究在业务整体架构及组件架构设计中利用人工智能的产生式系统图搜索策略进行
对业务驱动设计的改造研究 , 以期改变系统整体设计方式 , 提高系统整体性能 .
关键词 : 图搜索策略 ; DCOM ; 业务 ; 事务效率
() 中图分类号 : TP311113文献标识码 : A文章编号 : 100721792 20040320266203
在目前基于 DCOM 设计的大型商业数据库应用系统中 , 往往由于业务驱动等的原因 , 系统设计及开发采用按业务分组方式进行 , 各个开发组间任务分工独立 , 相互间通过统一 接口协调 , 其开发往往高效率 , 彼此干扰较小 , 系统整体开发周期较短. 但由于缺少通盘 的考虑 , 尤其是仅仅受业务全盘驱动等的影响 , 组合后的系统整体往往较为复杂 , 整体运 行效率不高 , 尤其是关于业务组合的事务效率大大减低 , 事务处理峰值起伏不断 , 系统事 务整体呈现波浪式运作 , 系统整体压力过大 , 运行极不平稳 , 对生产上造成不良影响 , 个 别案例出现系统整体瘫痪的现象 。
在单一事务处理中 , 单一业务往往包含众多的子业务步骤 , 其中有些用于效验 , 有些 则是作为子事务对整体业务事务进行支持 。
例如在航空公司信息系统中 , 针对航班关闭这一业务环节 , 针对货运方面而言 , 其操 作的事务包含了航班信息效验 , 航程信息效验 , 以及集装容器信息变更 , 货物信息变更 ,
航班信息变更 , 舱位管理信息变更 , 信息信息记录 , 业务日志记录等等众多内容 。
根据 DCOM 业务驱动的分组开发模式 , 商业逻辑层划分为航班 , 运输单证 , 集装容器 等多对象类进行处理 。其中各对象的方法分别予以实现 , 相关功能则相互间通过接口调 用 , 最终由 DB 层完成实施 。其系统整体组合后的 DCOM 调用关系图见图 1 。
由于各分子业务间存在联系 , 其分组开发设计的组件间的调用关系复杂 , 相互调用的关系存在 , 对象的创建与回收存在重复现象 , 不仅浪费资源 , 而且延长了事务整体提交时 间 , 成为高峰事务处理以及数据库阻塞的原因之一 。
() 现根据其组件调用名称来建立对象间的调用关系图 图 2 , 3。
以某一业务为起始节点 , 建立 DCOM 搜索树示例如图 4 所示 。
图 4 中 , 同色节点
示同一组件名 , 但不一定是调用了同一方法 。其图中节点间的箭
头关系为其相互间的调用关系 。
Ξ 收稿日期 : 2004 - 03 - 23
() 作者简介 : 申青松 1973 年生, 男 , 工程师 , 硕士 , 现在南方航空公司计算机中心工作.
平均事务响应时间图 图 1
图 2 业务实现的组件关系图
依据产生式系统图搜索理论 , 建立 DCOM 调用关系图概念如下 :
() 1节点深度 : 根据当前业务及其对事务型组件的调用关系 , 以及组件间的相互 关系 , 定义业务节点的深度为 0 , 其它组件节点的深度为其调用者节点的深度加 1 ;
() 2路径 : 即从当前业务开始 , 依次调用组件节点的方法同时生成后续组件并调
() 方法的过程节点序列 。例如 业务 S , COM A , COM D , COM F , COM E , COM D;
() ) ( 3路径耗散值 : 令 C COM 父 , COM 子为在当前系统中 , 由 COM 父生成并
COM 子的系统代价 , 包含 DCOM 不同服务器的 CPU 处理 , 内存调度 , DCOM 的代理
等等 。则路径的耗散值为连接这条路径各节点间所
有耗散值的总和 ;
() ) ((4建立评价函数 F , F 组件节点= G 组件
) () 节点+ H 组件节点, 并对各个组件节点进行计
算 。其中 :
() G 组件节点为由该项业务开始 , 根据对组件
的调用关系定义 , 依次生成并调用路径上的组件进 图 3 组件节点关系图 行业务处理 , 直至调用到该组件节点的已经历路径
的耗散值之和 ;
() H 组件节点为该组件节点方法实现过程中 ,
调用其它组件节点直至 DB 组件最终实现原组件调用
任务的所需路径的耗散值的总和 。
研究对 DCOM 的调用应用人工智能图搜索理论 :
() 1依次以业务处理事务中出现的每一同名组
件为 目 标 节 点 T , 以 业 务 节 点 为 初 始 节 点 S , 对
DCOM 搜索树应用启发式搜索算法 , 根据评价函数 F
找到初始节点至该事务节点的最佳路径 。 () 2对 每 一 事 务 COM 节 点 的 最 佳 路 径 进 行 组 未经任何处理的组件调用关系图 图 4
合 , 变换 , 生成实现这一业务所需的所有组件间的
( ) 新的调用关 系 图 见 图 5。图 5 中 , 尽 量 保 留 每 一
COM 节点处于其原图的最佳路径上 。
() 3对原重复组件节点的不同方法调用进行整
合 , 在 避 免 冲 突 时 统 一 由 最 佳 路 径 上 的 惟 一 名 称
COM 组件节点进行统一调用 。
在组合后的组件调用关系图中 , 各个组件间的 关系不再是实现某一业务及其子业务而依次调用的 各个组件节点 , 而变更为以组件调用最佳路径为前 图 5 经过最佳路径整理后 提的以各个路径以及图整体耗散值最小为目标的调 的组件调用关系图 用关系图 。
其组合后 , 图中避免了重复组件节点的出现 , 减少了组件间的关系层数 , 并在同一组 件的生存期内统一进行各个方法的调用处理 。 由于组合后的各个组件基本处于其最佳路
径上 , 其系统调用耗散值均为最小 , 所以在
整体大事务的范围内 , 图整体实现的业务目标也能代价最小化 ; 由于新的组件调用关系图的层数较少 , 在避免状态冲突时 , 各个组件一次创建基本实现其所需的方法调用处理 , 避 免了重复劳动 , 提高了系统整体的业务效率 , 避免了原事务设计的阻塞效验 , 提高了系统
整体的业务处理效率 。
参考文献 :
1 林哮瑞 ,马少平 . 人工智能 M . 北京 :清华大学出版社 ,1989.
2 Mary Kirtland. Designing component based applicationsM . Microsoft Press ,1999.
3 Guy Eddon , Henry Eddon. Programming Components with microsoft Visual Basic M . Microsoft Press ,2000.
()责任编辑 : 张楚民 ?268 ?