分享好友 最新资讯首页 最新资讯分类 切换频道
规则引擎专题---2、开源规则引擎对比
2024-12-29 10:15

开源的规则引擎整体分为下面几类

  • 通过界面配置的成熟规则引擎,这种规则引擎相对来说就比较重,但功能全,比较出名的有:drools, urule。

  • 基于jvm脚本语言,互联网公司会觉得drools太重了,然后会基于一些jvm的脚本语言自己开发一个轻量级的规则引擎,比较出名的有,groovy(开源风控radar),aviator,qlexpress。

  • 基于java代码的规则引擎:基于jvm脚本语言会有一些语法学习的成本,所以就有基于java代码去做的规则引擎,比如通过一些注解实现抽象的方式去做到规则的扩展,比较出名的有: easy rules。

这边重点介绍三款产品drools、qlexpress和groovy,先介绍下基础能力和优劣势,后面再进行详解。

drools是一款由JBoss组织提供的基于Java语言开发的开源规则引擎,可以将复杂且多变的业务规则从硬编码中解放出来,以规则脚本的形式存放在文件或特定的存储介质中(例如存放在数据库中),使得业务规则的变更不需要修改项目代码、重启服务器就可以在线上环境立即生效。

drools官网地址:https://drools.org/

drools源码下载地址:https://github.com/kiegroup/drools

在项目中使用drools时,即可以单独使用也可以整合spring使用。如果单独使用只需要导入如下maven坐标即可

 

如果我们使用IDEA开发drools应用,IDEA中已经集成了drools插件。如果使用eclipse开发drools应用还需要单独安装drools插件。

drools API开发步骤如下

Groovy是用于Java虚拟机的一种敏捷的动态语言,它是一种成熟的面向对象编程语言,既可以用于面向对象编程,又可以用作纯粹的脚本语言。使用该种语言不必编写过多的代码,同时又具有闭包和动态语言中的其他特性。

由阿里的电商业务规则、表达式(布尔组合)、特殊数学公式计算(高精度)、语法分析、脚本二次定制等强需求而设计的一门动态脚本引擎解析工具。
在阿里集团有很强的影响力,同时为了自身不断优化、发扬开源贡献精神,于2012年开源。

QLExpress脚本引擎被广泛应用在阿里的电商业务场景,具有以下的一些特性:

1、线程安全,引擎运算过程中的产生的临时变量都是threadlocal类型。
2、高效执行,比较耗时的脚本编译过程可以缓存在本地机器,运行时的临时变量创建采用了缓冲池的技术,和groovy性能相当。
3、弱类型脚本语言,和groovy,javascript语法类似,虽然比强类型脚本语言要慢一些,但是使业务的灵活度大大增强。
4、安全控制,可以通过设置相关运行参数,预防死循环、高危系统api调用等情况。
5、代码精简,依赖最小,250k的jar包适合所有java的运行环境,在android系统的低端pos机也得到广泛运用。

常见能力对比如下

规则引擎QLExpression (ms)groovy(ms)drools(ms)动态规则支持支持支持灵活性低高中复杂度低高中上手快慢慢使用广度中中高

执行性能对比如下

执行次数规则引擎QLExpression (ms)groovy(ms)drools(ms)100w15901713641000w1255170935305000w60230351619414
最新文章
免费ppt一键生成软件有哪些?6个ppt一键生成软件告诉你
⑴一键生成:输入关键词即可ai生成,节省时间。⑵模板海量:内置大量的行业模板,如科技、教育、医疗等。⑶预览编辑:提供在线编
轻松开启之旅,搭建选择指南
选择合适的,轻松搭建,开启您的之旅。从众多中挑选最佳工具,简化建设过程,让您的业务迅速上线。搭建概览挑选适宜的在互联网飞
百得燃气灶人工24小时《今日汇总》
百得燃气灶维修服务24小时热线《2025汇总》(2025已更新)百得燃气灶维修服务维修电话:(1)400-9963-901(2)400-9963-901百得燃气
智慧搜索工具推荐:搜索工具精选
随着信息时代的到来,互联网已经成为了我们生活中不可或缺的一部分。每天,数以百万计的人们在网络上搜索各种信息,从学术知识到
SEO中的页面速度优化方法
优化网站页面速度是提升用户体验和搜索引擎排名的关键因素。快速加载的页面不仅能减少用户流失,还能提升网站在搜索引擎中的可见
漫蛙漫画免费漫画
漫蛙漫画免费漫画是一款拥有很多漫画作品的手机软件,用户通过软件可以在这里查询各种优秀的漫画作品进行观看,在寻找的过程当中
六、统计所有告警设备和所有活跃告警设备(连续三天都有告警的设备)的总数,以及平均监测值
记录一些工作中有意思的统计指标,做过一些简化方便大家阅读,记录如有错误,欢迎在评论区提问讨论~连续问题两种思路第一种:日
数虎图像科技
数虎图像科技,这家在数字图像领域不断探索的企业,以其精湛的技术和对行业的深刻理解,在图像处理、人工智能和数字内容创作等方
SEO赋能,开启网站网络推广新
随着网络推广进入新阶段,SEO排名优化成为关键助力,帮助网站实现显著提升,抢占市场先机,实现高效流量和品牌价值飞跃。随着互
抖音拍摄卡顿原因解析与优化技巧指南
  抖音,这个如今风靡一时的短视频平台,已经成为了无数人日常生活的一部分。无论是记录生活中的点滴,还是展示自己的才艺,抖