[开源]规则引擎,基于Web可视化配置,可零代码实现复杂业务逻辑
开源系统流程管理
![[开源]规则引擎,基于Web可视化配置,可零代码实现复杂业务逻辑](https://yy123.ink/api/img/1782592193210-lk4lfz.jpg)
一、开源项目简介
规则引擎 RuleEngine
业务逻辑实现不再依赖于代码开发,可零代码实现复杂业务逻辑。
提供了普通规则、规则集、决策表、以及应对复杂场景的函数支持,可以适用任何业务需求。业务逻辑实现不再依赖于代码开发,可零代码实现复杂业务逻辑!
二、开源协议
使用Apache-2.0开源协议
三、界面展示




四、功能概述
规则引擎开源版 RuleEngine
基于web可视化配置,简单高效快捷。
业务逻辑实现不再依赖于代码开发,可零代码实现复杂业务逻辑!
操作简单
无需开发人员即可配置复杂的规则业务,提供了非常方便的操作界面,小白也可以驾驭自如。
功能多
我们提供了普通规则、规则集、决策表、以及应对复杂场景的函数支持,可以适用任何业务需求。
高性能
规则配置后动态加载到内存中,独创了一套自己的规则模式匹配算法以及数据结构,可以从根本上保证规则运行的效率,实现大量复杂业务规则计算时的毫秒级响应。
来源:规则引擎 RuleEngine 官网文档
五、技术选型
技术栈/版本介绍:
- 所涉及的相关的技术有
- SpringBoot 2.2.11
- RabbitMQ
- Redis、Redisson
- MySQL 5.7.9
- Mybatis-plus
- Maven 3.3
- Swagger
规则如何调用
调用规则方项目pom.xml文件引入以下依赖
<dependency>
<groupId>cn.ruleengine</groupId>
<artifactId>rule-engine-client</artifactId>
<version>2.0</version>
</dependency>
SpringBoot项目application.yml配置文件配置
详细内容请查看 README.md 文档。
然后编写如下代码进行测试:
@EnableRuleEngine
@RunWith(SpringRunner.class)
@SpringBootTest
public class RuleTest {
@Resource
private RuleEngineClient ruleEngineClient;
@Test
public void test() {
// 构建规则请求参数
PhoneTestRule phoneTestRule = new PhoneTestRule();
phoneTestRule.setPhone("134000000000");
// 调用执行引擎中的规则
GeneralRule generalRule = this.ruleEngineClient.generalRule();
Output output = generalRule.execute(phoneTestRule);
System.out.println(output);
}
}
@Data
@Model(code = "phoneRuletest")
public class PhoneTestRule {
/**
* 可选,默认code为属性name
*/
@InputParameter(code = "phone")
private String phone;
}
更多调用方式,请查看 README.md 文档。
评论