Drools新特性

Drools推出了一套新的基于KIE概念的API,其目的是将之前版本中对规则引擎繁琐的调用和加载过程加以简化。

什么是KIE呢,研究Drools和jBPM的集成知识解决方案的过程只是使用“droolsjbpm”组名称。这个名字渗透了GitHub帐户和Maven POM。随着范围的扩大和新项目的推出,KIE是“知识是一切”的缩写,被选为新的组名。KIE名称也用于系统的共享方面; 如统一构建,部署和利用等。

OptaPlanner是一种本地搜索和优化工具,已经从Drools Planner中脱颖而出,现在是Drools和jBPM的顶级项目。这是Optaplanner的一个自然演变,同时拥有强大的Drools集成,长期以来一直独立于Drools。

Drools工作台称为Drools-WB。KIE-WB是将所有Guvnor,Drools和jBPM插件相结合的uber工作台。jBPM-WB由于不存在,被KIE-WB重复出现。Drools6给我的最大不同就是把rules打包成jar,使用端通过kie-ci来动态从maven repo中获取指定rules jar版本,虽然和maven有紧耦合,简化以及清晰了rules的使用和动态升级,

例如:系统建立2个项目:一个Drools项目来实现规则,验收规则,生成jar包,另外一个就是真正要用规则的项目,直接通过引入不同版本的jar包实现规则动态升级。

KIE生命周期

无论是Drools还是jBPM,通常可以分为以下几个方面:

  1. 创建:通过UI(kie-wb)创建知识库,例如:DRL、BPMN2、决策表,决策树,实体等。
  2. 构建:构建一个可提供KIE部署的组件,简单的说就是生成一个包含知识库的jar包
  3. 测试:在构建部署之前,对整体知识库进行测试。
  4. 部署:KIE使用Maven将其组件进行部署到应用程序上。
  5. 使用:通过KieContainer创建Kie会话(Kiesession),为执行提供前提条件。
  6. 执行:通过执行Kiesession与Drools系统进行交互,执行规则等。
  7. 交互:用户与KieSession的交互,通过命令行或UI。
  8. 管理:管理KieSession或者KieContainer对象。

Drools也是几年前出生的规则引擎,但是随着成为行为建模的单一平台的愿景,它很快意识到,只能通过对三种互补业务建模技术同样重要的方式实现这一目标:

  1. 业务规则管理  下面主要以规则管理为核心进行详细的介绍
  2. 业务流程管理  流程管理指指的就是规则流部分
  3. 复杂事件处理  事件处理Drools Funsion负责事件处理功能

引用规则引擎的目的

对系统的使用人员

  • 将业务规则交于业务人员来处理
  • 提高业务灵活性,业务人员可以随时进行修改
  • 加强业务处理的透明度,业务规则可以被管理
  • 修改业务不需要再通过开发人员,减少对IT人员的依赖(开发要失业了)
  • 减少部门于部门之间的矛盾,各司其职。

对程序开发人员

  • 简化了系统的复杂程度,使得系统更简单透明
  • 提高系统的可维护性和减少维护成本
  • Drools的独立性,方便各个系统的交接
  • 减少“硬代码”业务规则的成本和风险
  • 一套完善的业务规则系统,还能出去装逼用……(调侃)

应用场景

  • 为应对多变化的,复杂的业务场景
  • 可快速的,低成本的进行业务规则变更
  • 业务人员的直接管理,不需要开发人员的干预,减少风险
  • 系统迁移,系统变更更方便,更独立

作用与优点:

  • 业务规则与系统代码,解耦合
  • 提供领域语言(自然语言),使业务人员更易理解
  • 提供了可视化的页面操作,使用更简单(kie-wb比较适合IT人员)
  • 能有效的提高实现复杂逻辑的代码的可维护性
  • 可进行随时的业务扩展和及时的维护
  • 符合组织对敏捷或迭代开发过程的使用

如图所示:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值