当前位置: 首页 > news >正文

分享一个Drools规则引擎微服务Docker部署

通常我们都是把Drools作为嵌入式使用,但在微服务泛滥时代,还在老套的嵌入式显然不符合微服务架构要求,本文分享一个把Drools作为微服务独立部署的方案。

本方案基于Drools引擎微服务,提供REST接口。

  • 1、可以动态部署Drools规则
  • 2、规则存储在RDBMS中
  • 3、可以动态运行规则,运行模式有两种,
  • 3.1. 一种是直接输入一组数据,运行规则后返回反结果
  • 3.2. 一种模式是从源数据逐页读取数据,执行规则处理后,输出结果到目标数据源中。
  • 4、可以动态修改规则,修改后重新部署规则。

另外,我们还支持业务人员采用图形方式配置规则(SourceRule),然后再编译成Drools的规则文件,然后再部署到规则服务中。

定义:

  • 1、domain:规则领域,定义规则的分组,比如:税务计算,工资计算,考勤计算等。
    • 每个domain内的所有规则会同时调用,比如有若干个工资计算规则,它们会按顺序一起执行。
    • 每个domain会有同一个数据源和数据目标配置。
  • 2、SourceRule:基于可视化图形,由业务人员定义的源规则,源规则会编译成Drools规则文件,然后部署到规则服务中。

模块结构:

    1. irmp-rule-api:提供REST接口定义,方便客户端自己根据定义实现远程客户端,调用服务。
    1. irmp-rule-service:规则引擎服务提供模块,提供规则引擎,规则存储,规则执行等核心功能。
    1. irmp-rule-client:规则引擎客户端,基于Spring-boot Rest Client框架,实现规则引擎客户端,方便客户端调用。

未完待续。。。
代码链接:https://gitee.com/iisp_team/irmp-rule


http://www.mrgr.cn/news/96634.html

相关文章:

  • mysql JSON_ARRAYAGG联合JSON_OBJECT使用查询整合(数组对象)字段
  • RKNN SDK User Guide学习要点
  • 蓝桥杯15届JAVA_A组
  • 【QT5 网络编程示例】TCP 通信
  • Kong网关研究
  • 【Unity】记录TMPro使用过程踩的一些坑
  • Spark,上传文件
  • HTML中数字和字母不换行显示
  • 数据结构和算法(十一)--图
  • 去中心化稳定币机制解析与产品策略建议
  • ros2--xacro
  • Python-八股总结
  • 【群智能算法改进】一种改进的蜣螂优化算法IDBO[3](立方混沌映射Cubic、融合鱼鹰勘探策略、混合高斯柯西变异)【Matlab代码#92】
  • 【MVC简介-产生原因、演变历史、核心思想、组成部分、使用场景】
  • 【Pandas】pandas Series to_markdown
  • 六种光耦综合对比——《器件手册--光耦》
  • 十五届蓝桥杯省赛Java B组(持续更新..)
  • ISIS【路由协议讲解】-通俗易懂!
  • 汇编学习之《数据传输指令》
  • Sentinel[超详细讲解]-1