面向 Spring Boot 的可观测业务流程编排引擎

【开源发布】ZestFlow v0.2.0:面向 Spring Boot 的可观测业务流程编排引擎

导读

如果你经历过「800 行 OrderService、改一行回归三天、线上只能 println 猜步骤」------这篇讲 ZestFlow 0.2.0 想解决什么、适合谁、怎么 30 分钟试起来

一、个人开源,为什么做 ZestFlow?

ZestFlow 是 个人维护的开源项目(Apache 2.0),不是大厂背书的产品线。动机很直接:自己在 Spring Boot 项目里反复踩过「长 Service、难观测、改流程要发版」的坑,于是把编排、Trace、调度做成一套能嵌入现有项目的引擎,并公开出来给同样处境的开发者试用。

诚实边界也要先说清楚:

  • 适合:个人项目、小团队、新业务链路灰度验证
  • 谨慎:金融核心、强合规场景请先 PoC + 自测,社区仍在早期
  • 欢迎:Star、Issue、PR ------ 对个人开源而言,每一条反馈都直接影响下一版优先级

在大量 Spring Boot 项目里,业务流程并没有写在 BPM 里,而是写在 Service 方法的顺序调用 里。它能跑,但有三个结构性问题:

  1. 可读性崩塌if-else 嵌套、临时 flag、补偿逻辑散落,新人不敢改。
  2. 可观测性缺失:日志只有「下单失败」,不知道卡在风控还是支付渠道。
  3. 变更成本高:调一步流程 = 改代码 + 发版 + 全链路回归,产品想「挪个步骤」都要排期。

ZestFlow 的定位不是替代 Camunda 做审批流,而是:

把 Java 方法变成可编排节点,用设计器连成 DAG,每一步自动留痕 ------ 嵌入现有 Spring Boot,不学 BPMN。

协议 Apache 2.0 ,核心库 Maven Centralcn.zestflow.www),Admin 提供 Windows / Linux 一键部署包


二、v0.2.0 核心能力一览

架构图

架构示意:Admin → Executor → Collector → chain_event

text 复制代码
Admin 控制面 → Executor 执行业务 DAG → Collector → chain_event
模块 你能得到什么
设计器(AntV X6) 拖拽建链,Predicate/Selector 分支一眼看清
方法级元件 @ZestExecute 细于类级规则链,同一类多方法可独立编排
全链路 Trace 每节点入参/出参/耗时写入 chain_eventexecutionId 还原执行图
热更新 发布链后 Executor 双缓冲 reload,业务 JVM 不重启
Cron + 多执行器 注册、路由、Failover;业务 Cron 读库自治
AI Copilot Admin 内 NL 生链草稿、Aviator 辅助、失败 Trace 诊断
Dev MCP Cursor/Claude 写元件、validate_chain、Playground 场景生成
试验场 38 个 E2E 场景,改链即发
SLA 邮件告警 5 类规则 + 告警历史审计

与竞品一句话差异:

  • LiteFlow:你缺 UI + 节点级 Trace → ZestFlow 补这两块。
  • xxl-job:你缺 DAG 与参数追踪 → ZestFlow 补编排。
  • Camunda:你缺轻量嵌入、不想学 BPMN → ZestFlow 走 Hub + 嵌入式路线。

详见 方案对比。


三、30 秒下载 Admin(无需克隆源码)

平台 直链下载
Windows zestflow_admin_0.2.0_win.zip
Linux zestflow_admin_0.2.0_linux.tar.gz
text 复制代码
解压 → 修改 config/application-prod.yml 数据源
     → start-admin.bat start  /  ./start-admin.sh start
     → http://localhost:8080(密码见 config/bootstrap-admin.password)

四、业务项目一行依赖嵌入

xml 复制代码
<dependency>
  <groupId>cn.zestflow.www</groupId>
  <artifactId>zestflow-starter</artifactId>
  <version>0.2.0</version>
</dependency>
yaml 复制代码
spring.application.name: my-shop
zestflow:
  executor:
    admin-addresses: http://localhost:8080
    port: 20550

完整手把手见:Spring Boot 3 接入 ZestFlow 保姆级教程。


五、谁应该试用?谁可以跳过?

适合 ✅ 不适合 ❌
Service 越来越长,流程难维护 只要内存规则链 → LiteFlow
需要流程图给产品/测试评审 审批流、人工节点 → Flowable/Camunda
需要节点级执行记录与排障 纯 Cron、无 DAG → xxl-job
已有 Spring Boot,不想上 BPM 集群

六、写在最后:个人项目,需要你的声音

v0.2.0 是一个人把「能跑的编排引擎」打磨成「值得试用的开源产品」的一步:部署包、文档站、184+ Admin API、公网 Demo 齐备。没有营销团队,靠文档与实战文章说话;没有工单队列,Issue 就是路线图。

  • 在线体验www.zestflow.cnzestflow / zestflow
  • 源码:Gitee · GitHub
  • Star ⭐ 是对个人开源最实在的鼓励;踩坑请开 Issue,愿意共建欢迎 PR

延伸阅读:个人开源项目:ZestFlow 的坚持与边界 · 2026 开源编排引擎选型指南 · 电商下单 Trace 实战


原创技术文。ZestFlow:Apache 2.0,Maven cn.zestflow.www:zestflow-starter:0.2.0。开源仓库:gitee.com/zestcc/zestflow。个人站点:www.zest.wang

相关推荐
云烟成雨TD1 小时前
Spring AI Alibaba 1.x 系列【77】执行取消
java·人工智能·spring
醇氧2 小时前
【Linux】Java 服务生产级部署指南:实现常驻后台、开机自启与系统服务化管理
java·开发语言
JAVA面经实录9172 小时前
Netty 全套系统化学习文档(零基础到高阶面试完整版)
java·后端
weixin_523185322 小时前
Java面试高频题:Integer缓存机制与 equals、== 区别
java·缓存·面试
GetcharZp2 小时前
C++ 程序员的终极减负:仅需一个头文件,优雅搞定 HTTP 客户端与服务端
后端
Hui Baby2 小时前
MCP SSE协议发送注意
java
IT_陈寒2 小时前
Python的pickle让我半夜加班,这破玩意儿太坑了
前端·人工智能·后端
仙俊红2 小时前
SpringBoot启动原理
java·spring boot·后端
星间都市山脉3 小时前
Android STS(Security Test Suite)完整介绍与测试流程
android·java·linux·windows·ubuntu·android studio·androidx