1、规则引擎简介
规则引擎是一种嵌套在应用程序中的组件,实现将业务规则从应用程序代码中分离出来。规则引擎使用特定的语法编写业务规则。
引入规则引擎后端带来的好处:
(1)实现业务逻辑与业务规则的分离,实现业务规则的集中管理。
(2)可以动态修改业务规则,从而快速响应需求变更。
(3)使业务分析人员可以参与编辑、维护系统的业务规则。
(4)使用规则引擎提供的规则编辑工具,使复杂的业务规则实现变得简单。
2、规则引擎选型比较:
目前的规则引擎系统中,使用较多的开源规则引擎是Drools,另外还有商用的规则管理系统BRMS是ILOG JRules。这两款规则引擎设计和实现都比较复杂,学习成本高,适用于大型应用系统。当然还有还有付费版的URule这样优秀的规则引擎。
1.Drools:
Drools 是用 Java 语言编写的开放源码规则引擎,基于Apache协议,基于RETE算法,于2005年被JBoss收购。Drools就是为了解决业务代码和业务规则分离的引擎。Drools 规则是在 Java 应用程序上运行的,其要执行的步骤顺序由代码确定,为了实现这一点,Drools 规则引擎将业务规则转换成执行树。drools优点:
1、简化系统架构,优化应用。
2、提高系统的可维护性和维护成本。
3、方便系统的整合。
4、减少编写“硬代码”业务规则的成本和风险。
drools官网:https://www.drools.org/
droolsgithub:https://github.com/kiegroup/drools
Drools是一个业务逻辑集成平台(BLip)。它是用Java编写。它是由JBoss和红帽公司扩展支持,并实现Rete模式匹配算法的一个开源项目。
通俗地说,