关于开源软件:LiteFlow-v294发布一款能让你系统支持热更新编排脚本编写逻辑的国产规则引擎框架

前言

上海的天气降温让人猝不及防,然而咱们的迭代速度却颠三倒四。

明天咱们带来了LiteFlow v2.9.4版本。

咱们每次的公布的issue有很大一部分依靠于咱们的使用者社区,社区人越来越多。我看到了使用者在应用过程中遇到的问题,也收集了很多应用过程中很有意思的倡议。这些也正是咱们每一次迭代的方向。谢谢那么多的小伙伴的反对和倡议,LiteFlow始终会是一个以社区为驱动的开源框架。

LiteFlow是一个开源编排式规定引擎,可能让你的零碎逻辑任意编排,应用脚本书写逻辑,所有的逻辑和规定均可热变更。设计零碎和重构零碎的神器。

如果你是第一次晓得这个我的项目,能够去官网或相干的主页进行理解:

我的项目官网:

https://liteflow.yomahub.com

gitee托管仓库:

https://gitee.com/dromara/lit…

github托管仓库:

https://github.com/dromara/li…

v2.9.4介绍

新版本咱们仍旧依靠于社区,一共实现了14个issue。

其中80%的issue来自于社区使用者。

2.9.4版本齐全兼容2.9.3版本,能够无缝降级。

新的脚本引擎

鉴于之前社区有人反馈LiteFlow提供的Javascript脚本引擎是基于jdk的,而JDK的Javascript引擎只反对到ES5标准,且不反对Java 17。

所以这次咱们新增了一个Javascript引擎:GraalJs。反对ES6标准,且反对Java 8~17。

当然老的引擎咱们还是保留,如果是简略的js语法,你仍旧能够用老的引擎。

对于这块详情请参考官网的抉择脚本语言章节。

提供规定验证接口

尽管LiteFlow在启动时会去编译所有的规定,如果有错也会具体报出,然而在更改脚本前,使用者可能不太确信本人的规定写的有没有问题。所以在社区内,有人提出了心愿减少一个验证规定的接口。

那这次咱们也提供了相应的接口。详情请参考官网的验证规定章节。

Zk和Etcd反对部分刷新机制

如果你应用zk或者Etcd,你在zk和etcd里更改了规定,会主动推送到相应的利用进行无感主动刷新。

然而之前的实现模式是全副刷新,即不论你改了哪个规定,所有的规定刷新一遍。尽管LiteFlow刷新速度十分疾速,然而这种实现模式还是不够优雅。

这次咱们实现了部分刷新,即你扭转哪个即刷新哪个。

申明式组件的二次动静代理问题

在社区内,咱们也收到了许多应用申明式组件个性小伙伴们的反馈,在申明式组件上应用相似事务标注等须要动静代理的个性时,LiteFlow的申明式组件会报错。

通过核验,咱们发现LiteFlow之前漏思考了二次动静代理的问题,这次咱们修复了。

其余修复

在新版本中,咱们修复其余issue也有很多,包含脚本对元数据取值的bug,@ScriptBean标注所带来的一些小问题,脚本异样解决的优化等等。

残缺更新列表

个性 #I61XYZ 额定提供GraalJs引擎,在js上多一个抉择

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

加强 #I63C31 zk,etcd反对只刷新扭转的局部

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

加强 #I61EMZ 减少一个验证EL规定的api,供查看之用

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

加强 #I633VH 倡议FlowBus提供批量移除子链办法

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

加强 #I61RI0 心愿能够凋谢对 QLExpress 的一些操作!

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

加强 #I622I9 外部代码标准ChainName和ChainId问题

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

加强 #I61LYN 标准问题和 不必要的import 常量提取等

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

修复 #I62PV3 申明式组件如果把LiteflowMethod定义在父类中,不执行

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

修复 #I62DT1 如果对上下文标注@ScriptBean,那么脚本和java中拿到的上下文并不是同一个上下文

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

修复 #I61H49 脚本异样心愿能够抛出到response

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

修复 #I631ZF groovy脚本接入时,自定义异样抛出后被组件失败异样笼罩

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

修复 #I61HIO 办法级的组件申明,而后在办法上打 Spring 的事务注解 @Transactional,会报错

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

修复 #I62CB8 脚本与java交互取元数据的问题

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

修复 #I61UZ6 switch抉择组件应用标签在同一组件时固定选到最初一个

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

社区

LiteFlow的社区是一个异样沉闷的开源社区,这里有许多的开源大佬,技术大牛,群内的小伙伴也很乐意帮你去答复问题。

如果你在应用和学习中有任何问题,能够通过以下形式进入社区进行发问:

https://liteflow.yomahub.com/…

【腾讯云】轻量 2核2G4M,首年65元

阿里云限时活动-云数据库 RDS MySQL  1核2G配置 1.88/月 速抢

本文由乐趣区整理发布,转载请注明出处,谢谢。

您可能还喜欢...

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据