规则引擎解决方案调研报告-v1.0.pdfVIP

  • 27
  • 0
  • 约8.91千字
  • 约 20页
  • 2020-07-21 发布于江苏
  • 举报
中国 XXXXXXXX 系统 for J2EE 规则引擎解决方案调研报告 Version 1.0 Revision History Date Ve Description Author rsion 4/21/2004 1.0 , 2003 Page 2 目录 , 2003 Page 3 规则引擎解决方案调研报告 1. 规则引擎 规则引擎是解决可变的商业规则的问题的 1.1 概述 规则引擎(Rules Engine)的运作机制是在内存中向对象应用一套规则。首 先内存使用来自调 对象的输入,例如 户档案请求会话。这样,在任何规则 实际激活之前,在内存中就已经有了一份 户档案的内容。 规则只能在一个上下文环境中执行,上下文环境把规则集和内存关联起来。该 环境提供了到 Rules Engine 的接口,Rules Engine 控制着应用程序的规则部分 与内存之间的关系。 内存由生产规则(production rules)负责操作,生产规则包含在规则集里。,依 照规则的左半 (left-hand sides,LHS)针对内存中的对象进行计算。如果内存 中的对象与 LHS 中描述的模式匹配,就会触发规则的右半 (right-hand side , RHS)指定的操作。 此外某些操作可能会在内存中加入新的对象。例如,规则 , 2003 Page 4 Classifier 对 户年龄进行测试,如果 USER.age 45 ,就在内存中加入一个新 的 Classification 对象。 生产系统的运行,要执行以下操作: 1. 匹配: 估计规则的 LHS,判断哪个规则与当前内存中的内容匹 配。 2. 冲突解决:选择一个 LHS 匹配的规则。如果没有规则匹配,就停 止解释。 3. 操作: 执行选中规则 RHS 中指定的动作。 4. 返回第 1 步。 规则会一直在内存中执行,直到冲突解决集变为 0 时才停止(也就是没有规则 能激活了)。 在 Rules Engine 停止之后,规则管理器组件会返回一个对象列表,列表中包含 , 2003 Page 5 内存中仍然存在的对象。一个可能的场景就是,还剩下一个类型为 “Classification”或“ContentQuery”的对象。 Rules Manager 接着对剩下的对象进行迭代,用可选的对象过滤器过滤它们。 过滤器可以有选择地忽略某些对象或者对某些对象进行变换。 1.2 规则引擎分类 值得注意的是,存在不同类型的规则引擎,在决定如何应用一种工具之前 理解这种工具的用途是极其重要的。当您跨业务规则领域进行调查研究时,您 将注意到这些工具可以分为以下几类: 简单业务规则(simple business rule) —— 通过一张简化的、直观的 词汇表来表达并且是在应用程序或业务流程的可变性情况下调用的一 种业务规则。这种规则引擎的一个很好的例子就是 ilog 、Blaze 和 IBM 的 BRBeans 。 

文档评论(0)

1亿VIP精品文档

相关文档