compileflow阿里开源流程引擎 您所在的位置:网站首页 java流程设计器 compileflow阿里开源流程引擎

compileflow阿里开源流程引擎

2023-05-11 08:19| 来源: 网络整理| 查看: 265

1、compileflow是什么

compileflow是一个非常轻量、高性能、可集成、可扩展的流程引擎。

compileflow Process引擎是淘宝工作流TBBPM引擎之一,是专注于纯内存执行,无状态的流程引擎,通过将流程文件转换生成java代码编译执行,简洁高效。当前是阿里业务中台交易等多个核心系统的流程引擎。

compileflow能让开发人员通过流程编辑器设计自己的业务流程,将复杂的业务逻辑可视化,为业务设计人员与开发工程师架起了一座桥梁。

2、功能列表 高性能:通过将流程文件转换生成java代码编译执行,简洁高效。 丰富的应用场景:在阿里巴巴中台解决方案中广泛使用,支撑了导购、交易、履约、资金等多个业务场景。 可集成:轻量、简洁的设计使得可以极其方便地集成到各个解决方案和业务场景中。 完善的插件支持:流程设计目前有IntelliJ IDEA、Eclipse插件支持,可以在流程设计中实时动态生成java代码并预览,所见即所得。 支持流程设计图导出svg文件和单元测试代码。 3、Quick Start Step1: 下载安装IntelliJ IDEA插件(可选)

插件下载地址:github.com/alibaba/com…

安装说明:请使用IntelliJ IDEA本地安装方法进行安装,重新启动IntelliJ IDEA就会生效。

Step2: POM插件 com.alibaba.compileflow compileflow 1.0.0 复制代码

可以在 search.maven.org 查看可用的版本。

注意: compileflow仅支持JDK 1.8及以上版本。

Step3: 流程设计

下面以ktv demo为例,通过demo的演示和实践了解节点及属性的配置和API的使用。

demo描述:N个人去ktv唱歌,每人唱首歌,ktv消费原价为30元/人,如果总价超过300打九折,小于300按原价付款。

S3.1

创建bpm文件,如下图:

ktv_demo_s1.png

注:bpm文件路径要和code保持一致,在文件加载模式下流程引擎执行时会根据code找到文件。

S3.2

通过插件进行流程设计或者直接编写流程xml文件。

S3.3 调用流程

编写如下单元测试:

public void testProcessEngine() { final String code = "bpm.ktv.ktvExample"; final Map context = new HashMap(); final List pList = new ArrayList(); pList.add("wuxiang"); pList.add("xuan"); pList.add("yusu"); context.put("pList", pList); final ProcessEngine processEngine = ProcessEngineFactory.getProcessEngine(); final TbbpmModel tbbpmModel = processEngine.load(code); final OutputStream outputStream = TbbpmModelConverter.getInstance().convertToStream(tbbpmModel); System.out.println(outputStream); System.out.println(processEngine.getTestCode(code)); processEngine.preCompile(code); System.out.println(processEngine.start(code, context)); } 复制代码

compileflow原生只支持淘宝BPM规范,为兼容BPMN 2.0规范,做了一定适配,但仅支持部分BPMN 2.0元素,如需其他元素支持,可在原来基础上扩展。

4、 更多资料 DEMO快速开始 原始淘宝BPM规范详细说明


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有