AutoCompose - 携程自动编排【开源】

AutoCompose - 携程自动编排【开源】

AutoCompose是一款单事件驱动(无状态)的流程引擎。使用本框架,能够轻松实现复杂服务的自动化编排【零配置、零编码】,能够显著提高开发维护效率。支持同步编程、异步编程(已支持CompletableFuture、Reactor、ListenableFuture)。

AutoCompose核心特点是:

  • 通过解析代码的方式(零配置:不需要配置维护编排规则文件),
  • 自动得(零编码)获取业务流程模型,
  • 自动得(零编码)按照模型将组件(以最优并发策略)组合执行。

一切都是自动的(显著减少开发维护工作量),这也是本框架命名为自动编排的初衷。

和开源框架LiteFlow框架有什么区别?

两款框架都是解决复杂服务开发的单事件驱动(无状态)的流程引擎。

LiteFlow的作者认为它是规则引擎,虽然有这种说法上的差异,但实际上,两者的功能、解决的问题是一样的。

AutoCompose追求简化开发提升效率,LiteFlow倾向于更灵活的的编排能力。

AutoCompose LiteFlow
学习成本 低(熟悉几个接口与API) 高(组件接口类型多,还要学习其EL表达式写法)
使用成本 低(省去编排代码开发,自动组件数据传递,显著降低开发维护工作量) 高(需要额外开发维护编排文件,需要硬编码数据传递)
编排灵活性 低(只支持串行编排、并行编排) 高(支持非常丰富灵活的编排能力)
异步编程 支持(显著简化异步编程,降低门槛,提高开发效率) 不支持
代码可读性 高(逻辑都在代码里) 低(必须结合代码与编排文件,才能确定实际执行逻辑)
逻辑可视化 高(可生成业务流程图) 中(可阅读编排文件)

如果你想知道AutoComposable的简单使用,可以看:

AutoCompose 简单介绍

如果你想了解其中的具体细节,AutoCompose 的实现核心主要依赖这几个方面:

开源地址

相关推荐
fatfishccc34 分钟前
Spring MVC 全解析:从核心原理到 SSM 整合实战 (附完整源码)
java·spring·ajax·mvc·ssm·过滤器·拦截器interceptor
没有bug.的程序员42 分钟前
MyBatis 初识:框架定位与核心原理——SQL 自由掌控的艺术
java·数据库·sql·mybatis
执键行天涯1 小时前
从双重检查锁定的设计意图、锁的作用、第一次检查提升性能的原理三个角度,详细拆解单例模式的逻辑
java·前端·github
程序员江鸟1 小时前
Java面试实战系列【JVM篇】- JVM内存结构与运行时数据区详解(私有区域)
java·jvm·面试
架构师沉默1 小时前
Java 状态机设计:替代 if-else 的优雅架构
java·程序员·架构
java亮小白19971 小时前
Spring Cloud 快速通关之Sentinel
java·spring cloud·sentinel
atwednesday1 小时前
大规模文档预览的架构设计与实现策略
java
算家计算2 小时前
“下一代”图像模型——ComfyUI-Flux-Krea本地部署教程,体验划时代的图像质量
人工智能·开源·flux
Dioass2 小时前
Java面向对象中你大概率会踩的五大隐形陷阱
java
三花AI2 小时前
风口真的要来了,国务院关于深入实施“人工智能+”行动的意见
人工智能·开源