优秀国产规则引擎框架,LiteFlow 发布 v2.12.2 版本


LiteFlow是一个开源编排式规则引擎,能够让你的系统逻辑任意编排,可选用脚本书写逻辑,支持多达8种脚本语言,支持丰富的第三方存储的支持,所有的逻辑和规则均可热变更。设计系统和重构系统的神器。

LiteFlow是Gitee的高star项目,截止到发此文章的时候,Gitee star超过6.2k,Github则拥有2.8Kstar。

同时LiteFlow也是国内优秀的社区驱动型开源项目,开源3年多,目前已经被各大一线公司应用在核心系统上,据不完全统计,国内将近千余家公司都在使用。特性以及支持度都非常好。社区人数超过5000人。测试用例1800多个,质量有保障。

如果你是第一次知道这个项目,可以去官网或相关的主页进行了解:

项目官网:https://liteflow.cc

以下文章LiteFlow简称为LF。

前言

LF 2.12.2.1发布啦!

肯定有小伙伴会奇怪,这次怎么最后还有个点1呢。因为2.12.2本来已经发布,但是这期间社区里有个同学用到了声明式的异常事件监听功能,发现有一个bug并立即上报了。我在查清楚原委之后觉得这应该被尽快修复,所以在2.12.2后面又打了个补丁版本。

但是这并不代表2.12.2就不能用,如果你没有用到声明式的异常事件监听功能,那么2.12.22.12.2.1是完全一致的。

这次的2.12.2.1版本没有带来大的特性,算是常规性迭代,但是也带了很多功能的增强和一些bug的修复。这些issue都来自于社区。

所以更加说明了我们是非常重视社区的。

这次版本带来了13个issue的更新,包括8个增强和5个修复。接下来我会挑一些来介绍。

决策路由支持刷新

决策路由自从2.12.0推出以来,我们一直在对决策路由做一些优化。比如2.12.1版本支持了数据库中使用决策路由,以及决策路由的命名空间。这次我们对决策路由的调整是:支持了决策路由的刷新。

如果决策路由配置在数据库中,并开启了轮询,那么改变等待轮询即可刷新决策路由。如果没有开启轮询,你现在可以通过调用以下api来完成刷新:

FlowBus.reloadChain("chain1""THEN(a, b, c)""AND(r1, r2)");

是的,它是一个重载方法,它还有一个两个参数的方法,那是单独刷新规则的,现在它的重载可以连带规则和路由一起刷新了。

SQL插件的轮询逻辑优化

在这之前,一直有社区里的同学反映,在使用数据库存储规则和脚本时,单更新脚本和单更新规则,自动刷新都正常,但是同时更新了规则和脚本,刷新就会一直失效。

我们这次修复了这个问题。现在无论你怎么更新,自动刷新都会生效。

上下文支持超类获取

这也是社区一位使用者提出的建议,有些上下文的设计是有超类的。在公共组件里希望可以用超类去获取上下文。这样更利于公共组件的定义。

这次我们支持了这一形式的获取。你的上下文既可以用本身的Class获取,也可以用它的超类去获取。

EL的构建现在支持retry属性的构建了

如果经常用动态代码构建规则特性的小伙伴应该知道,LF里有个ELBus对象,是可以很方便的通过代码来构建出规则的。

之前不支持retry属性,这次我们不仅支持了retry。而且我们把ELBus的核心代码部分重构了一遍,更加合理,更加高效。

全部更新列表

增强 #IAE5PA FlowBus中提供刷新route的api方法

https://gitee.com/dromara/liteFlow/issues/IAE5PA

增强 #IACEH9 SQL插件中的轮询逻辑优化

https://gitee.com/dromara/liteFlow/issues/IACEH9

增强 #IACEGB 上下文超类判断的获取和转换

https://gitee.com/dromara/liteFlow/issues/IACEGB

增强 #IA9QBG el-builder的部分重构

https://gitee.com/dromara/liteFlow/issues/IA9QBG

增强 #IA9NOI ELBus中增加对retry构建的api支持

https://gitee.com/dromara/liteFlow/issues/IA9NOI

增强 #IA6E3Q redis配置的时候可以指定Redisson的链接数,默认的connections太多了

https://gitee.com/dromara/liteFlow/issues/IA6E3Q

增强 #IA8B3T 插件 throw Exception 会丢失堆栈

https://gitee.com/dromara/liteFlow/issues/IA8B3T

增强 #IABK5C 校验 EL 表达式,获取校验失败原因

https://gitee.com/dromara/liteFlow/issues/IABK5C

修复 #IA5PAK ELBus串行编排不支持对每个节点进行超时配置

https://gitee.com/dromara/liteFlow/issues/IA5PAK

修复 #IAD2HH 希望支持执行节点日志与监控日志的分开管理

https://gitee.com/dromara/liteFlow/issues/IAD2HH

修复 #IACSQ8 liteflow-solon-plugin 启动报错

https://gitee.com/dromara/liteFlow/issues/IACSQ8

修复 #IADIXE 使用迭代循环组件,下游getCurrLoopObj()获取为null

https://gitee.com/dromara/liteFlow/issues/IADIXE

修复 #IAFKQV 声明式的onError方法取不到Exception

https://gitee.com/dromara/liteFlow/issues/IAFKQV

相關推薦

2023-03-24

LiteFlow介绍 LiteFlow是一个开源编排式规则引擎,能够让你的系统逻辑任意编排,可选用脚本书写逻辑,支持多达5种脚本语言,支持丰富的第三方存储的支持,所有的逻辑和规则均可热变更。设计系统和重构系统的神器。 LiteFlo

2023-04-12

LiteFlow介绍 LiteFlow是一个开源编排式规则引擎,能够让你的系统逻辑任意编排,可选用脚本书写逻辑,支持多达5种脚本语言,支持丰富的第三方存储的支持,所有的逻辑和规则均可热变更。设计系统和重构系统的神器。 LiteFlo

2023-07-25

LiteFlow介绍 LiteFlow是一个开源编排式规则引擎,能够让你的系统逻辑任意编排,可选用脚本书写逻辑,支持多达6种脚本语言,支持丰富的第三方存储的支持,所有的逻辑和规则均可热变更。设计系统和重构系统的神器。 LiteFlo

2024-06-05

LiteFlow是一个开源编排式规则引擎,能够让你的系统逻辑任意编排,可选用脚本书写逻辑,支持多达7种脚本语言,支持丰富的第三方存储的支持,所有的逻辑和规则均可热变更。设计系统和重构系统的神器。 LiteFlow是Gitee的

2023-06-27

LiteFlow介绍 LiteFlow是一个开源编排式规则引擎,能够让你的系统逻辑任意编排,可选用脚本书写逻辑,支持多达6种脚本语言,支持丰富的第三方存储的支持,所有的逻辑和规则均可热变更。设计系统和重构系统的神器。 LiteFlo

2023-09-05

前言 LiteFlow在这一年中的迅速发展大家是有目共睹的,Gitee托管仓库一年猛增3000+ Star,社区人数也从500人迅速扩展到了3000多人。有越来越多的公司的开发部门开始以LiteFlow作为选型来构建自己的业务系统。 喜忧参半,喜的是L

2023-11-03

LiteFlow介绍 LiteFlow是一个开源编排式规则引擎,能够让你的系统逻辑任意编排,可选用脚本书写逻辑,支持多达6种脚本语言,支持丰富的第三方存储的支持,所有的逻辑和规则均可热变更。设计系统和重构系统的神器。 LiteFlo

2023-10-17

的前两天),相约开源PHP办公室,我们一起聊 AI!>>> LiteFlow介绍 LiteFlow是一个开源编排式规则引擎,能够让你的系统逻辑任意编排,可选用脚本书写逻辑,支持多达6种脚本语言,支持丰富的第三方存储的支持,所有的逻辑和

2024-10-16

前言 LiteFlow的最新版本2.12.4发布了! 在这个版本里,我们带来了2个大特性和诸多的升级。同时这个版本也是向下兼容2.12.X系列的版本的。 JavaX脚本 LF从很早就开始支持Java脚本,让java代码可以像一种脚本语言那样运作,使用j

2022-12-14

前言 LiteFlow v2.9.5版本今天正式发布!带来了3个横向扩展特性和诸多增强。 LiteFlow是一个开源编排式规则引擎,能够让你的系统逻辑任意编排,可选用脚本书写逻辑,支持多达5种脚本语言,支持丰富的第三方存储的支持,所

2023-02-11

v2.9.7介绍 2.9.7是LiteFlow 2023年的第一个版本。很抱歉这个版本来的晚了一点。 2.9.7提供了1个特性,5个增强,4个Bug修复,1个开源集成特性,总计11个issue的更新。 其中版本特性为迭代器组件,弥补了循环组件之前的不足。 迭

2024-02-07

更新内容包括: 功能优化 移除启动时不必要的搜索引擎索引构建步骤。 by github@guqing in #5332 问题修复 修复事务未提交便触发控制器执行可能导致数据状态不正确的问题。 by github@guqing in #5323 修复启动时 GcSynchronizer 没

2024-01-31

制) 修复 WebSocket 不能获取 queryString 单字母参数问题 liteflow 升为 2.11.4.2 fastjson2 升为 2.0.44 snack3 升为 3.2.88 bean-searcher 升为 4.2.7 sqltoy 升为 5.2.91 beetlsql 升为 3.29.0-RELEASE reactor-netty-http 升为 1.1.15 reactor-core 升为 3.6.2 s

2024-10-08

则可以通过规则链动态配置和修改,而不需要重启系统。国产替代node-red系统。 物联网: 收集设备数据上报,经过规则链的规则判断,触发一个或者多个动作,例如:发邮件、发告警、和其他设备或者系统联动。 数据分发: