From e007849a623dce7d0ac167bf2d5debe641d0c2c1 Mon Sep 17 00:00:00 2001 From: bryan31 Date: Sun, 5 Jun 2022 12:49:32 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0README?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 30 +++++++++++++++++------------- README.zh-CN.md | 30 +++++++++++++++++------------- 2 files changed, 34 insertions(+), 26 deletions(-) diff --git a/README.md b/README.md index 0e7a5a722..3f23b62a7 100644 --- a/README.md +++ b/README.md @@ -14,19 +14,23 @@ liteFlow is a lightweight , fast component-based process engine framework / rule ## Example projects: [https://gitee.com/bryan31/liteflow-example](https://gitee.com/bryan31/liteflow-example) ## Feature -* decoupled orchestration of complex business, providing a unified implementation for all components -* based on the rule file to orchestrate the process, support xml, json, yml three types of rule file writing method -* framework provides a local file configuration source, zk configuration source implementation -* framework to provide custom configuration source , just implement an interface , you can load the configuration source from anywhere -* support for SpringBoot auto-assembly, but also supports Spring configuration and non-Spring projects -* provide serial and parallel 2 modes , providing common common expression statements -* scripting language nodes can be defined, supporting both QLExpress and Groovy scripts, scripting language supports instant hot changes -* Components can support retry, each component can be customized with retry configuration and specified exceptions -* Explicit subprocess mode with no level of nesting, implicit subprocess mode -* Data slot isolation mechanism, context independent and stable under multiple concurrency -* Support for elegant smooth hot refresh features -* Very low loss to the system, can be stable in the core business of large-scale microservices -* Simple monitoring to know the running time ranking of each component +** * Component definition unified: ** All logic is a component, for all logic to provide a unified component implementation, small size, large energy. +** * Rules lightweight: ** based on the rules file to arrange the process, learning the rules entry only takes 5 minutes, a read both understand. +** * Rule diversification: ** rules support XML, JSON, YML three rule file writing methods, which you like to use. +** * Arbitrary arrangement: ** Synchronous asynchronous mixing, no matter how complex the logic process, using LiteFlow rules, are easy to do, see the rules file to see how the logic works. +** * Rules can be loaded from anywhere: ** The framework provides implementations of local file configuration sources and ZK configuration sources, as well as an extension interface that allows you to store rules anywhere. +** * Elegant hot refresh mechanism: ** Rule changes, instant change of application rules without restarting your application. High concurrency does not cause any errors in executing rules due to refreshing rules. +** * Wide support: ** LiteFlow works regardless of whether your project is built on Springboot, Spring, or any other Java framework. +** *JDK support: ** From JDK8 to JDK17. Don't worry about JDK versions. +** * Scripting language support: ** Scripting language nodes can be defined, supporting both QLExpress and Groovy scripting. More scripting languages will be supported in the future. +** * Rule nesting support: ** You can use simple expressions to create multiple nested complex logic layouts if you want. +** * Component retry support: ** Components can support retry, and each component can customize the retry configuration and specify exceptions. +** * Context isolation mechanism: ** Reliable context isolation mechanism, you do not have to worry about high concurrency data flow. +** * Declarative component support: ** You can make any of your classes become components in seconds. +** * Detailed step information: ** How your link performs, how much time each component takes, what errors are reported at a glance. +** * Stable and reliable: ** has been iterating for more than 2 years, running stably on the core systems of major companies. +** * Excellent performance: ** the framework itself consumes little extra performance, depending on the efficiency of your component execution. +** * Built-in simple monitoring: ** Built-in a command line monitoring framework, you can know the running time ranking of each component. **WECHAT OFFICIAL ACCOUNT** diff --git a/README.zh-CN.md b/README.zh-CN.md index f53caf8a5..2121be96b 100644 --- a/README.zh-CN.md +++ b/README.zh-CN.md @@ -14,19 +14,23 @@ liteFlow是一个轻量,快速的组件式流程引擎框架/规则引擎, ## 示例工程:[https://gitee.com/bryan31/liteflow-example](https://gitee.com/bryan31/liteflow-example) ## 特性 -* 复杂业务的解耦编排利器,为所有组件提供统一化的实现方式 -* 基于规则文件来编排流程,支持xml,json,yml三种规则文件写法方式 -* 框架中提供本地文件配置源,zk配置源的实现 -* 框架提供自定义配置源,只需实现一个接口,即可从任何地方加载配置源 -* 支持SpringBoot的自动装配,也支持Spring的配置和非Spring的项目 -* 提供串行和并行2种模式,提供常见常见的表达式语句 -* 可以定义脚本语言节点,支持QLExpress和Groovy两种脚本 -* 组件可以支持重试,每个组件均可自定义重试配置和指定异常 -* 提供无级嵌套的显式子流程模式,隐式子流程模式 -* 数据槽隔离机制,在多并发下上下文独立而稳定 -* 支持优雅平滑热刷新特性 -* 对系统损耗极低,可以稳定运行在核心业务大规模的微服务中 -* 自带简单的监控,能够知道每个组件的运行耗时排行 +* **组件定义统一:** 所有的逻辑都是组件,为所有的逻辑提供统一化的组件实现方式,小身材,大能量。 +* **规则轻量:** 基于规则文件来编排流程,学习规则入门只需要5分钟,一看既懂。 +* **规则多样化:** 规则支持xml、json、yml三种规则文件写法方式,喜欢哪种用哪个。 +* **任意编排:** 同步异步混编,再复杂的逻辑过程,利用LiteFlow的规则,都是很容易做到的,看规则文件就能知道逻辑是如何运转的。 +* **规则能从任意地方加载:** 框架中提供本地文件配置源和zk配置源的实现,也提供了扩展接口,您可以把规则存储在任何地方。 +* **优雅热刷新机制:** 规则变化,无需重启您的应用,即时改变应用的规则。高并发下不会因为刷新规则导致正在执行的规则有任何错乱。 +* **支持广泛:** 不管你的项目是不是基于Springboot,Spring还是任何其他java框架构建,LiteFlow都能游刃有余。 +* **JDK支持:** 从JDK8到JDK17,统统支持。无需担心JDK版本。 +* **脚本语言支持:** 可以定义脚本语言节点,支持QLExpress和Groovy两种脚本。未来还会支持更多的脚本语言。 +* **规则嵌套支持:** 只要你想的出,你可以利用简单的表达式完成多重嵌套的复杂逻辑编排。 +* **组件重试支持:** 组件可以支持重试,每个组件均可自定义重试配置和指定异常。 +* **上下文隔离机制:** 可靠的上下文隔离机制,你无需担心高并发情况下的数据串流。 +* **声明式组件支持:** 你可以让你的任意类秒变组件。 +* **详细的步骤信息:** 你的链路如何执行的,每个组件耗时多少,报了什么错,一目了然。 +* **稳定可靠:** 历时2年多的迭代,在各大公司的核心系统上稳定运行。 +* **性能卓越:** 框架本身几乎不消耗额外性能,性能取决你的组件执行效率。 +* **自带简单监控:** 框架内自带一个命令行的监控,能够知道每个组件的运行耗时排行。 **微信公众号**