rule engine(规则引擎)简单使用

规则引擎 RuleEngine

业务逻辑实现不再依赖于代码开发,可零代码实现复杂业务逻辑。

GitHub地址:https://github.com/rule-engine/rule-engine(欢迎提出宝贵意见)
Gitee地址:https://gitee.com/qwding/rule-engine
项目展示地址:http://ruleengine.cn/


场景举例

假设我们有一个需求,有个商城增加一个新老用户福利活动,为VIP等级大于4以上以及消费金额大于3000的人员发送优惠券。

通常我们需要程序员对此需求进行编码,最简单的实现方式则直接把条件硬编码到程序中,但是后面如果需求发生了改变,需要消费金额大于4000的人员发送优惠券,我们不得已需要重新修改代码然后再次发布运行。有一个好的办法则是通过配置文件或者读取配置表形式,但是这样后面如果想增加一个条件,或者修改条件参数,也是需要开发人员进行处理,并且实时性不能保证。

简单介绍

可以通过Web页面进行配置复杂多变的业务场景,实时变更规则运行逻辑。基于Web可视化配置,简单高效快捷。

执行流程图

rule engine(规则引擎)简单使用_第1张图片

使用说明

引用以上举例进行一个规则配置,首先我们可以把『为VIP等级大于4以上以及消费金额大于3000的人员发送优惠券』看做两个条件:

1:VIP等级大于4以上的
2:消费金额大于3000的

VIP等级与消费金额可以看成2个元素,作为调用规则入参使用。

我们先创建这两个元素:

rule engine(规则引擎)简单使用_第2张图片

rule engine(规则引擎)简单使用_第3张图片

我们再创建以下两个条件:

rule engine(规则引擎)简单使用_第4张图片
rule engine(规则引擎)简单使用_第5张图片

条件创建完毕后,还需要根据条件执行成功做具体的事情,根据以上例子则需要一个发送优惠券动作,我们则需要定义一个变量:

rule engine(规则引擎)简单使用_第6张图片

然后我们则创建一个规则,组合这些条件以及结果:

rule engine(规则引擎)简单使用_第7张图片

我们也可以预览我们的规则配置:

rule engine(规则引擎)简单使用_第8张图片

我们也可以测试我们配置的规则:

rule engine(规则引擎)简单使用_第9张图片
rule engine(规则引擎)简单使用_第10张图片

规则运行日志:

rule engine(规则引擎)简单使用_第11张图片


以上就是此规则引擎的简单使用,还有更多玩法。同时我们的功能还有欠缺,期待对规则引擎也感兴趣的你加入到我们的开发中。

你可能感兴趣的:(spring,boot,spring,java,java,spring,boot,mybatis)