java工作流框架有哪些 知乎
发布时间:2025-05-14 00:37:50 发布人:远客网络
一、java工作流框架有哪些 知乎
1、java工作流框架有哪些;常见的如JBPM、Activity都可以‘也有一些针对全自主知识产权的:
2、自主知识产权的MyApps低代码快速开发平台产品,这是国内首款可视化配置式开发平台,平台集流程引擎、表单引擎和报表引擎等核心科技于一体,其快速灵活的开发特性及对中国式流程管理业务模式和操作习惯的精准拿捏展现了独到的优势。开发者通过管理后台的可视化界面,对表单排版及流程节点之间关联进行编辑操作,开发者在没有任何编程语言基础的情况下也能开发出各种业务场景的应用。为企业用户提供应用系统开发所需要的一切基础设施,平台涵盖了对企业的业务流程需求分析,设计,快速开发部署,仿真测试,运行维护,更新和发布,流程绩效分析和管理,流程改进等对企业绩效管理(BPM)进行全生命周期支持。myApps从第一版开发到目前已经有14年的历史,已经包含100多万行源代码。
3、1)微服务:高扩可展性,每个服务都能独立部署,扩容和缩容方便,能够有效地提高利用率;
4、2)多时态:分为授权时、设计时、运行时。设计时:操作并存储表单、流程、视图、报表等。授权时:操作并存储用户、部门、权限等。运行时:实际用户使用系统并存储业务数据。
5、3)多种部署模式:支持单机和集群部署、云端部署;
6、4)集群化:由过去的对等集群架构演化为所有微服务都可以动态伸缩,涉及到负载均衡由前端单点转移至调用方;
7、5)配置化:包括服务的依赖关系解耦,对应用透明无侵入;
8、6)版本化:指在服务升级或线上bug修复等场景下所需要的多版本管理,服务的提供者与消费者在发布引用时须指定版本号。
9、7)异步化:常用的性能优化方式,在合适的场景下,异步化可以带来更大的吞吐量、更短的响应时间,而且还具备隔离外部不稳定性的作用。
10、8)机卡分离:做好数据备份和升级系统的分开,便于轻松升级到新版本,
二、Java开源工作流框架对比
工作流是业务流程在计算机环境下的自动化描述,它是CSCW(计算机支持的协同工作)的一部分。在实现流程逻辑时,我们通常使用字段记录状态。然而,面对复杂的状态和条件,单纯用字段记录状态的方式可能不再理想。工作流框架能解除业务宏观流程和微观逻辑的耦合,让业务人员制定流转逻辑,专业人员关注流程节点。主流的开源Java工作流框架有Activiti、Camunda和Flowable,它们均源自于jbpm。
Activiti是针对业务人员、开发人员和系统管理员的轻量级工作流和业务流程管理平台。它具有快速、稳定的核心流程引擎,易于集成的特性。Activiti Cloud是新一代的业务自动化平台,专为分布式基础架构设计。设计师包括Modeler设计器和在线设计器bpmn.io,支持BPMN 2.0流程定义。主要服务类包括调用方式、设计器等。
Flowable是一个轻量级业务流程引擎,用于部署BPMN 2.0流程定义、创建流程实例、查询运行和历史流程实例。Flowable的核心思想是提供多功能扩展,使用户能够根据需求自定义。它在功能上比Activiti更加完善,是开发国内特色工作流系统时的更佳选择。
Camunda是一个基于Java的框架,支持工作流、案例管理和业务决策管理。工作原理包括设计器和兼容性。Camunda在并发场景下的性能通常优于Flowable,稳定性也较好。
在社区活跃度方面,从GitHub活跃度来看,Activiti和Flowable较为相似,而Camunda则相对不活跃。在微服务、云计算等环境下,Camunda的前景优势逐渐显现,成为新一代工作流引擎。
无论是Activiti、Flowable还是Camunda,都是传统工作流引擎,为开发者提供学习和研究价值。建议开发者深入了解这些框架的设计思想和理念,以便在实际项目中选择最适合的工具。
三、开源流程引擎比较【涛哥架构新知系列】
在构建基于ChatGPT和langchain的智能客服系统架构时,我深入调研了市场上的主要流程引擎。以下是针对开源流程引擎的概览:
主要的开源流程引擎包括Activiti、Camunda和Flowable。这些引擎多为Java开发,其中Activiti、Camunda和Flowable是较传统的办公自动化工作流引擎。在国内,许多OA产品采用Activiti作为基础。
在流程图前端设计方面,阿里云小蜜智能客服采用G6进行开发。
基于当前情况,可考虑的选项为Activiti和Logicflow+turbo。Compileflow专注于交易流程,适合开发人员,不适宜业务人员,且其IDE插件式编辑器仅提供流程图展示功能,已两年未更新。Activiti7功能全面,却复杂,拥有30万+代码量,使用广泛,资料丰富,但改造难度大。Activiti是面向OA场景的引擎,应用于C端可能性能不足,性能问题的改造需要大量人力。
滴滴的Logicflow前端活跃,但Turbo引擎使用者较少,社区不活跃。Turbo引擎有1.1万行代码,功能较少,性能优势明显,预计改造人力投入较少,但技术难题解决相对困难。
参考资料提供了深入信息,如Activiti工作流引擎的优缺点、Activiti与Flowable、Camunda的比较、滴滴开源的LogicFlow、BPMN 2.0规范及Turbo引擎的GitHub链接。