一

这个版本做的很折腾。期间几个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. Loj#143-[模板]质数判定【Miller-Rabin】

    正题 题目链接:https://loj.ac/p/143 题目大意 给出一个数\(p\),让你判定是否为质数. 解题思路 \(Miller-Rabin\)是一种基于费马小定理和二次探测定理的具有较高正 ...

  2. serialVersionUID序列化版本号与ObjectOutputStream对象输入输出流

    1. 观察ObjectOutputStream 我们观察ObjectOutputStream就可以发现该类没有无参构造,只有有参构造,所以他是一个包装流 2. 具体使用: public static ...

  3. 实验3:OpenFlow协议分析实践

    作业链接:实验3:OpenFlow协议分析实践 一.实验目的 能够运用 wireshark 对 OpenFlow 协议数据交互过程进行抓包: 能够借助包解析工具,分析与解释 OpenFlow协议的数据 ...

  4. react之组件数据挂在方式

    1.属性(props) 组件间传值,在React中是通过只读属性 props 来完成数据传递的. props:接受任意的入参,并返回用于描述页面展示内容的 React 元素. import React ...

  5. C++学习 3 结构体

    结构体基本概念: 结构体属于用户自定义的数据类型,允许用户存储不同的数据类型: 结构体定义和使用: 语法:struct 结构体名 { 结构体成员列表 }: 通过结构体创建变量名的方式有三种:     ...

  6. gRPC,爆赞

    原文链接: gRPC,爆赞 gRPC 这项技术真是太棒了,接口约束严格,性能还高,在 k8s 和很多微服务框架中都有应用. 作为一名程序员,学就对了. 之前用 Python 写过一些 gRPC 服务, ...

  7. JUC之Executor,ExecutorService接口,AbstractExecutorService类

    java多线程的Executor中定义了一个execut方法,ExecutorService接口继承了Executor接口,并进行了功能的扩展组合,定义了shutdown,shutdownNow,su ...

  8. 熊猫分布密度制图(ArcPy实现)

    一.背景 大熊猫是我国国家级珍惜保护动物,熊猫的生存必须满足一定槽域(独占的猎食与活动范围)条件.因此,科学准确的分析熊猫的分布情况,对合理制定保护措施和评价保护成效具有重要意义. 二.目的 通过练习 ...

  9. pycharm中设置自己的文件模板

    File>>Settings>>Editor>>File and Code Templates 选择文件类型Python Scripts,输入文件模板类型 #!/u ...

  10. 吴恩达深度学习课后习题第5课第1周第3小节: Jazz Improvisation with LSTM

    目录 Improvise a Jazz Solo with an LSTM Network Packages 1 - Problem Statement 1.1 - Dataset What are ...