01 Drools

各版本Drools官方文档:

https://docs.jboss.org/drools/release/7.1.0.Final/drools-docs/html_single/index.html

https://docs.jboss.org/drools/release/7.30.0.Final/drools-docs/html_single/index.html#_welcome

https://docs.jboss.org/drools/release/6.4.0.Final/drools-docs/html_single/index.html#d0e23

 

什么是规则引擎

规则引擎是由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。接受数据输入,解释业务规则,并根据业务规则做出业务决策。

Drools 原理

DRL 解释执行流程

Drools 规则是在 Java 应用程序上运行的,其要执行的步骤顺序由代码确定。为了实现这一点,Drools 规则引擎将业务规则转换成执行树,如下图所示:

 

规则引擎工作方式

Drools 规则引擎基于 ReteOO 算法(对面向对象系统的Rete算法进行了增强和优化的实现),它将事实(Fact)与规则进行匹配,以推断相应的规则结果,这个过程称之为模式匹配。

规则引擎默认不会在规则评估时立即执行业务规则,除非我们强制指定。当我们到达一个事实(Fact)与规则相匹配的节点时,规则评估会将规则操作与触发数据添加到一个叫作议程(Agenda)的组件中,如果同一个事实(Fact)与多个规则相匹配,就认为这些规则是冲突的,议程(Agenda)使用冲突解决策略(Conflict Resolution strategy)管理这些冲突规则的执行顺序。整个生命周期中,规则评估与规则执行之间有着明确的分割。规则操作的执行可能会导致事实(Fact)的更新,从而与其它规则相匹配,导致它们的触发,称之为前向链接。如图:

 

初入Drools, 有问题欢迎指出

收集的资料引用

文档:05 KIESession 与 StatelessKIESession...
链接:http://note.youdao.com/noteshare?id=c2afb802be8288ebcbde1e4feae225b2&sub=A9FECDDAD86E412EA6E58D4107430022

文档:04 kmodule.xml.note
链接:http://note.youdao.com/noteshare?id=c6b89a422f37783164a68646f6f9c241&sub=196D1B724EB940FBB891D1492D3467DC

文档:03 KIE 介绍.note
链接:http://note.youdao.com/noteshare?id=c089f9558e23ad02ea21cb8cb8e636cd&sub=3EB8474327854E6792842B0A9CE8ABB7

文档:02 KIE API解析:https://blog.csdn.net/wo541075754/article/details/75004575

文档:01 KIE概念&FACT对象.note
链接:http://note.youdao.com/noteshare?id=80a44b483580cf60a5a0903124bacbf1&sub=2AE088B9248C4D32893C6461E27FB69D

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值