分享一个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.mzph.cn/diannao/76376.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mac 本地化部署 dify

Macbook 本地化部署 dify 目录 Macbook 本地化部署 dify安装dockerdocker下载地址 安装dify下载dify到本地github可能遇到的问题: github打开超时在本地解压dify.zip文件本地化部署docker部署可能遇到的问题: 部署超时登录体验 dify 安装docker docker下载地址 根据电脑芯片选…

串口中断接收与环形缓冲实例(apollo3 blue plus)

#define DEV_UART1 1 #define GPS_POWER_PIN 13 #define GPS_LOG_ENABLE 1 #define MAX_UART1_SIZE 1024 #define AM_BSP_GPIO_COM_UART1_TX 8 #define AM_BSP_GPIO_COM_UART1_RX 9 // 定义环形缓冲区结构 typed…

操作系统高频(五)linux命令

操作系统高频(五)linux命令 1.Linux中查看进程运行状态的指令、tar解压文件的参数。⭐⭐⭐ 在Linux中,可以使用以下指令查看进程的运行状态: top: 用于实时监视系统的进程活动和系统资源使用情况。在终端中运行top…

Spring Boot 快速入手

前言:为什么选择 Spring Boot? 🚀 在现代 Java 开发中,Spring Boot 已成为最流行的后端框架之一。无论是小型 Web 应用、企业级系统,还是微服务架构,Spring Boot 都能提供快速开发、自动配置、轻量级部署的…

oracle-blob导出,在ob导入失败

导出&#xff1a; [oraclelncs dmp]$ /home/oracle/sqluldr2 gistar/res#pwd192.168.205.58:1521/lndb query"select * from an_odn_picture where length(PIC_CONTENT)<25000" filean_odn_picture.csv Charsetutf8 textCSV 0 rows exported at 2025-…

RK3568 pinctrl内容讲解

文章目录 一、pinctrl的概念`pinctrl` 的作用设备树中的 `pinctrl` 节点典型的 `pinctrl` 节点结构例子`pinctrl` 的重要性总结二、RK3568的pinctrl讲解1. `pinctrl` 节点2. `gpio0` 至 `gpio4` 子节点每个 `gpioX` 子节点的结构和作用3. `gpio1` 到 `gpio4` 子节点总结1. `aco…

北京南文观点:后糖酒会营销,以战略传播重构品牌信心坐标

第112届全国糖酒会落下帷幕&#xff0c;参展品牌面临一个关键命题。如何在流量洪流中沉淀品牌价值&#xff1f;北京南文&#xff08;全称&#xff1a;南文乐园科技文化&#xff08;北京&#xff09;有限公司&#xff09;认为&#xff0c;糖酒会的结束恰是算法时代品牌认知战的真…

html5时钟升级!支持切换深浅模式 Canvas实现现代化动态时钟

HTML5 Canvas实现现代化动态时钟 这里写目录标题 HTML5 Canvas实现现代化动态时钟项目介绍技术实现1. 项目架构2. Canvas绘图实现2.1 表盘绘制2.2 刻度绘制2.3 指针绘制 3. 动画效果4. 主题切换 项目亮点技术要点总结项目收获改进方向结语 项目介绍 本项目使用HTML5 Canvas技术…

《SRv6 网络编程:开启IP网络新时代》第2章、第3章:SRv6基本原理和基础协议

背景 根据工作要求、本人掌握的知识情况&#xff0c;仅针对《SRv6 网络编程&#xff1a;开启IP网络新时代》书籍中涉及的部分知识点进行总结梳理&#xff0c;并与工作小组进行分享&#xff0c;不涉及对原作的逐字搬运。 问题 组内同事提出的问题&#xff1a;本文缺扩展头描述…

卫星电话究竟是“锦上添花”?还是“刚需之选”?

在万物互联的时代浪潮中&#xff0c;卫星电话究竟是可有可无的“锦上添花”&#xff0c;还是至关重要的“刚需之选”&#xff1f;随着通信技术的持续进步与应用场景的日益拓展&#xff0c;这一问题的答案正逐渐明晰。 在5G基站覆盖99%行政村的今天&#xff0c;人类依然要直面自…

C语言复习笔记--指针(1)

今天我们进入指针的复习了.这部分有很多知识,话不多说,让我们进入指针的世界吧. 内存和地址 要想学指针就不能不学内存和地址. 内存 其中&#xff0c;每个内存单元&#xff0c;相当于⼀个学⽣宿舍&#xff0c;⼀ 个字节空间⾥⾯能放8个⽐特位&#xff0c;就好⽐同学们 住的⼋⼈…

【蓝桥杯每日一题】4.1

&#x1f3dd;️专栏&#xff1a; 【蓝桥杯备篇】 &#x1f305;主页&#xff1a; f狐o狸x "今日秃头刷题&#xff0c;明日荣耀加冕&#xff01;" 今天我们来练习二分算法 不熟悉二分算法的朋友可以看&#xff1a;【C语言刷怪篇】二分法_编程解决算术问题-CSDN博客 …

【设计模式】过滤器模式

过滤器顾名思义&#xff0c;定义一些过滤规则&#xff0c;将符合要求的内容筛选&#xff0c;就比如过滤不同大小或者不同颜色的水果&#xff0c;需要颜色和大小过滤器&#xff0c;筛选条件独立为对象&#xff0c;可以通过灵活组合形成过滤链条。避免大量使用判断语句。 案例代…

STM32 CAN学习(一)

CAN总线应用最多的是汽车领域。 CAN&#xff08;Controller Area Network&#xff09;控制器 局域 网 局域网&#xff1a;把几台电脑连接到一台路由器上&#xff0c;这几台电脑就可以进行通讯了。 控制器在汽车中的专业术语叫做ECU&#xff08;Electronic Control Unit&…

多线程开发中List的使用

由于ArrayList在多线程高并发情况下是不安全的&#xff0c;因此要慎用&#xff0c;那么此时如果涉及到集合操作&#xff0c;应该怎么选&#xff1a; 方案一&#xff1a;Vector: 特点&#xff1a;通过给所有方法都用 synchronized 修饰从而保证线程安全&#xff0c; 缺点&…

论文阅读笔记:Denoising Diffusion Implicit Models (2)

0、快速访问 论文阅读笔记&#xff1a;Denoising Diffusion Implicit Models &#xff08;1&#xff09; 论文阅读笔记&#xff1a;Denoising Diffusion Implicit Models &#xff08;2&#xff09; 论文阅读笔记&#xff1a;Denoising Diffusion Implicit Models &#xff08…

人工智能在医疗领域的前沿应用与挑战

在当今数字化时代&#xff0c;人工智能&#xff08;AI&#xff09;技术正以前所未有的速度改变着我们的生活&#xff0c;其中医疗领域无疑是受益最为显著的行业之一。从疾病诊断、治疗方案制定到患者护理&#xff0c;AI的应用不仅提高了医疗服务的效率和质量&#xff0c;还为医…

【计算机网络】HTTP与HTTPS

文章目录 1. HTTP定义2. HTTP交互3. HTTP报文格式3.1 抓包工具-fiddler3.2 抓包操作3.3 报文格式3.3.1 请求报文3.3.2 响应报文 4. URL5. 请求头中的方法6. GET和POST的区别7. HTTP报头7.1 Host7.2 Content_Length7.3 Content_Type7.4 User-Agent(UA)7.5 Referer7.6 Cookie 8 状…

怎样提升大语言模型(LLM)回答准确率

怎样提升大语言模型(LLM)回答准确率 目录 怎样提升大语言模型(LLM)回答准确率激励与规范类知识关联类情感与语境类逆向思维类:为什么不,反面案例群体智慧类明确指令类示例引导类思维引导类约束限制类反馈交互类:对话激励与规范类 给予奖励暗示:在提示词中暗示模型如果回…

【分享】内外网文件摆渡系统:让数据传输更安全更可靠

【分享】Ftrans内外网文件摆渡系统&#xff1a;让数据传输更安全更可靠&#xff01; 随着大数据时代的到来&#xff0c;数据的重要性日渐得到重视&#xff0c;数据作为数字经济时代下的基础性资源和战略性资源&#xff0c;是决定国家经济发展水平和竞争力的核心驱动力。以行业…