这个版本做的很折腾。期间几个issue推翻重做了好几次。

但我最终还是带来了LiteFlow 2.6.4这个重要版本。

虽然版本是小版本号升级,但是带来的更新可一点也不少。并完全向下兼容。

如果你是第一次知道LiteFlow这款框架,可以移步以下链接进行了解:

官网:https://yomahub.com/liteflow

Gitee仓库主页:https://gitee.com/dromara/liteFlow

Github仓库主页:https://github.com/dromara/liteflow

也可以看我之前发布的一篇介绍LiteFlow框架的文章

https://mp.weixin.qq.com/s/xyydmtk_a5R1zbg3EeORaw

这次的新版本带来了4个特性,4个增强,4个修复。总共12个issue的更新。

重点说下几个重要的更新点

支持文件脚本的定义

你除了可以把脚本内容写在配置文件中,也可以写在文件中。如果大的脚本就推荐写在文件中。毕竟IDE对文件的语法高亮和代码提示做的也相对友好。编写脚本会更加方便。

文档位置:https://yomahub.com/liteflow/docs/user-detail-guide/user-detail-guide-script

支持链路的前置和后置节点

新版本支持了前置组件和后置组件特性。

此特性针对整个链路,在链路之前之后固定执行某些组件。用于业务的前置处理和后置处理。

其中后置节点不受Exception影响,即便节点出错,后置节点依旧会执行。

文档位置:https://yomahub.com/liteflow/docs/user-detail-guide/user-detail-guide-pre-and-finally

优雅平滑刷新的支持

这个功能被催了好久,之前的版本因为不平滑刷新,热更新方面总感觉差点意思。

这次新版本带来了完全平滑的热刷新机制,分为主动刷新和被动刷新2个接口。在高并发时也不会担心因为刷新规则而导致的链路执行异常了。

文档位置:https://yomahub.com/liteflow/docs/user-detail-guide/user-detail-guide-refresh

并行节点中任意节点结束即继续的流程支持

对并行节点做了进一步的流程特性支持。根据这个特性,你可以编排出更加灵活的流程设计。

文档位置:https://yomahub.com/liteflow/docs/user-detail-guide/user-detail-guide-condition

本次2.6.4除了一些特性和增强。最大的改动就是重写了底层的异步线程模型。

本来想集成asyncTool作为线程编排的核心,但是做了一版之后发现有些细节没办法很好的兼容。于是根据asyncTool的核心思想,重写了异步线程模型以适配liteflow的异步线程编排。

在这里,感谢asyncTool这个项目和其项目作者京东武伟峰,在开发这个版本时候给了解答了我一些技术疑惑。

完整更新列表如下:

特性 #I4GYV2 script节点支持从文件中获取脚本

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

特性 #I4HGOW 支持链路的前置和后置节点

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

特性 #I4FSHW 优雅平滑刷新的支持

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

特性 #I4GS03 并行节点中支持任意节点结束即继续的流程设计

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

增强 #I4HKZG 借鉴asyncTool对异步线程底层进行了彻底重构

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

增强 #I4HD8L 支持异步节点返回自定义的错误

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

增强 #I4GZ1Q 增强异步线程超时的情况下打印出具体超时节点的信息

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

增强 #I4EXCP 新增 自定义 关闭/启动 Banner

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

修复 #I4GY9L 在启动后马上刷新流程后会有offerSlot的报错

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

修复 #I4FYKA jsonparser好像缺少脚本条件组件的解析

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

修复 #I4HQAA setIsEnd目前受isContinue的判断影响,还是会继续

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

修复 #I4HTY6 异步线程池不受配置控制的bug,一直是默认的数量

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

不知不觉LiteFLow已经更新了26个版本了,目前已经1000 star左右。

你们的star和肯定是LiteFlow继续迭代的唯一动力。

我知道还有很多问题没解决好,也有槽点。LiteFlow从2020年开始全面开源,还很年轻,但请相信,在我们积极的迭代下,LiteFlow的后续形态会很好。

LiteFlow拥有一个很活跃技术氛围良好的社区群(不是开车的那种。。),如果你对此项目感兴趣,希望你能为项目点上star并加入社区。

具体加入方式:https://yomahub.com/liteflow/blog/group-chat

同时你支持这个项目的话,也欢迎赞助捐赠。每一个赞助捐赠者都会在官网记录以示感谢。

捐赠方式:https://yomahub.com/liteflow/blog/donation

LiteFlow 2.6.4版本发行注记,里程碑版本!的更多相关文章

  1. LiteFlow 2.6.0版本发行注记,项目逻辑解耦的利器

    前言 自从LiteFlow 2.5.X版本发布依赖,陆续经历了10个小版本的迭代.社区群也稳固增长,每天都有很多小伙伴在问我问题. 但是我发现最多人问我的还是:什么时候能支持界面编排? 从LiteFL ...

  2. CentOS-7.4(1708)release notes发行注记

    Red Hat Enterprise Linux 当前的最新版本是 7.3. Red Hat Enterprise Linux 7 当前仅支持 64 位CPU:64-bit AMD.64-bit In ...

  3. 【ArcEngine入门与提高】Element(元素)、Annotation(注记)旋转

    因项目需要,需要做一个旋转注记的工具.因为注记这玩意用的比较少,网上资源也很少,所以做起来相当头疼.在经过一番研究之后,终于搞清楚注记的存储原理了,原来是和Element的类似,只不过注记是要把Ele ...

  4. Linux系统中查询发行版本号以及内核版本的命令总结

    了解Linux发行版本的版本号是一项非常重要的事情,大多数软件对系统的版本都有要求,发行版本号与软件不匹配,软件将无法安装或者无法使用.这边集合市面上流行的Linux发行版本版本号查询方法.有了这边文 ...

  5. arcgis10.2 打开CAD文件注记乱码

    1.使用ARCGIS10.2打开CAD文件,图面显示的注记内容为乱码,属性表中的注记内容正常2.同样的CAD文件在ARCGIS9.3中打开正常出现此情况影响历史数据使用,请求ESRI技术支持注:系统添 ...

  6. ArcGIS中的标注和注记

    在ArcMap中可以使用标注和注记来识别要素,选择标注或注记取决于你需要如何控制文本显示以及在ArcMap中如何存储文本. 1.标注只是临时显示相关数据或字段 2.标注用于长时间保存数据以及显示方式. ...

  7. 关于arcgis engine的注记显示与关闭问题

    1.注记的添加需要拿到IGeoFeatureLayer接口下的AnnotationProperties属性,转为IAnnotationLayerPropertiesCollection接口,并创建一个 ...

  8. 【ESRI论坛6周年征文】ArcEngine注记(Anno/ Label/Element等)处理专题 -入门篇

    原发表于ESRI中国社区,转过来.我的社区帐号:jhlong http://bbs.esrichina-bj.cn/ESRI/viewthread.php?tid=122097 ----------- ...

  9. 创建文本注记TextElement

    1.创建一个字体 /// <summary> /// 字体设置 /// </summary> /// <param name="size">Th ...

随机推荐

  1. 深度学习--GAN学习笔记

    生成模型 WGAN Blog GAN 推荐学习网站 生成模型 什么是生成模型? GMM: 用来做聚类,(非监督学习) NB(朴素贝叶斯):(监督学习,可以用来做垃圾邮件分类) Logistics 回归 ...

  2. HTML对溢出的控制:overflow

    用于对超出模块的内容进行控制 overflow的三种参数 1.visible(默认):溢出部分可见 2.hidden:溢出部分隐藏 3.auto:适当加入滚动条 overflow使用方法 1.常用 o ...

  3. xmake v2.5.8 发布,新增 Pascal/Swig 程序和 Lua53 运行时支持

    xmake 是一个基于 Lua 的轻量级跨平台构建工具,使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能 ...

  4. vue 快速入门 系列 —— vue-router

    其他章节请看: vue 快速入门 系列 Vue Router Vue Router 是 Vue.js 官方的路由管理器.它和 Vue.js 的核心深度集成,让构建单页面应用变得易如反掌. 什么是路由 ...

  5. 面试官:为什么需要Java内存模型?

    面试官:今天想跟你聊聊Java内存模型,这块你了解过吗? 候选者:嗯,我简单说下我的理解吧.那我就从为什么要有Java内存模型开始讲起吧 面试官:开始你的表演吧. 候选者:那我先说下背景吧 候选者:1 ...

  6. java---String 和 StringBuffer

    Java-String和StringBuffer类 Java String 类 字符串在Java中属于对象,Java提供String类来创建和操作字符串. 创建字符串 创建字符串常用的方法如下: ​ ...

  7. 使用寄存器点亮LED

    1. 项目:使用stm32寄存器点亮LED, 分别点亮红.绿.蓝3个灯. 2. 代码: 只需要编写main.c程序,stm3210x.h程序为空(只需要新建即可). 2.1 点亮绿灯main.c程序 ...

  8. 什么是Sprint计划?

    Sprint 计划是Scrum框架中的一个事件,团队将确定他们将在冲刺期间处理的产品积压项目,并讨论他们完成这些产品积压项目的初始计划. 团队可能会发现建立冲刺目标很有帮助,并以此为基础确定他们在冲刺 ...

  9. UltraSoft Scrum Meeting 博客汇总

    一.Alpha阶段 UltraSoft - Alpha - Scrum Meeting 1 UltraSoft - Alpha - Scrum Meeting 2 UltraSoft - Alpha ...

  10. CICD 流水线就该这么玩系列之一

    今天给大家分享的是 DevOps 世界中非常流行的一个 GitOps 工具 - Argo CD.如果你还不知道什么是 GitOps,欢迎留言告诉我,根据热度,我会再写一篇详细讲解 GitOps 的文章 ...