drools 决策引擎介绍、开发
1. 背景介绍 1.1 何为规则引擎 很多企业的IT业务系统中,经常会有大量的业务规则配置,而且随着企业管理者的决策变化,这些业务规则也会随之发生更改,为了适应这样的需求,IT业务系统应该能够快速且低成本的更新,通常做法是将业务规则的配置单独拿出来,使之与业务系统保持低耦合,实现这样功能的程序,叫做规则引擎。 接受数据输入,解释业务规则,并根据业务规则作出业务决策,从而实现了将业务决策从应用程序中分离出来。 1.2 一个实际的例子 银行贷款业务中,每种贷款类型都有不同的业务规则,并且这些规则也可能会根据实际应用情况进行调整,如觉得网贷产品类型有如下判定规则: 如果公积金缴存基数大于6000则进入白领贷 如果公积金缴存基数小于6000但单位性质是国家机关/事业单位也进入白领贷 如果公积金缴存基数小于6000且单位性质为非国家机关/事业单位则进入市民易贷 如果公积金缴存基数小于6000并且单位性质缺失则进入公积金贷 如果在代码中处理这类业务逻辑,会有很多的IF/ELSE,并且如果规则发生变化,还需要重新编写代码、编译、部署才能上线。 而通过规则引擎,可以方便的将这类业务强相关的逻辑放到规则引擎中执行 1.3 规则引擎的优点 对系统的使用人员 l 把业务策略(规则)的创建、修改和维护的权利交给业务经理 l 提高业务灵活性 l 加强业务处理的透明度,业务规则可以被管理 l