compileflow是什么

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

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

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

最新插件安装包下载

设计意图

  1. 希望为业务开发提供端至端,从设计至实现的业务流程解决方案。
  2. 提供多种流程引擎,实现从战略至商业能力,商业能力至业务流程,业务流程至系统,并最终实现业务的可视化全局架构。
  3. 设计高效的执行引擎,实现对服务的快速组合或扩展,提升idea(构思)至value(价值)的研发响应与交互速度。

特色

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

IntelliJ IDEA安装插件

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

以IntelliJ IDEA 2019版本为例,下载最新包到本地

使用本地安装的方式安装,注意安装整个zip不用手动解压


重启IntelliJ IDEA就会生效

使用教程

如果Maven项目,需引入依赖

<dependency><groupId>com.alibaba.compileflow</groupId><artifactId>compileflow</artifactId><version>1.0.0</version>
</dependency>

简单示例

新建BPM文件

  • 可在resources目录下创建,选中resources目录右键点击【Create New Bpm
    File】。例如我这边创建在resources的bpm目录下。

  • 输入文件名,例如:我这里的hello

  • 插件默认会生成了hello.bpm文件,是一个简单的开平方根demo流程,如下图

可视化编辑

  • 你可以选择下方【process-flow】进行可视化编辑,从左侧拖入节点到画布,或者选中节点拖动。

  • 双击空白处可编辑全局参数

  • 双击节点可以编辑节点参数(拖拽可调整节点位置)

Java代码预览

  • 可以选择下方【java code】进行Java代码预览。

创建测试代码

  • 选中文件右键,点击【Create New Bpm JUnit Test】可自动生成测试类

  • 到指定路径查看生成的测试类(修改入参数运行整个demo就完成了)

compileflow 淘宝工作流引擎相关推荐

  1. 干掉activity、flowable,阿里开源工作流引擎compileflow使用指南

    你知道的越多,不知道的就越多,业余的像一棵小草! 成功路上并不拥挤,因为坚持的人不多. 编辑:业余草 推荐:https://www.xttblog.com/?p=5247 compileflow 是什 ...

  2. GitHub 优秀的 Android 开源项目 淘宝技术牛p博客整理开发中最常用的GitHub上 优秀的 Android 开源项目整理(精品)...

    原文地址为http://www.trinea.cn/android/android-open-source-projects-view/,作者Trinea 主要介绍那些不错个性化的View,包括Lis ...

  3. 淘宝SEO优化提高流量的绝密办法

    淘宝SEO优化提高流量的绝密办法 啥是标题SEO优化?标题是一个产品的门户,在查找时为了非常好的展示产品,找淘宝网店的宝物标题怎么设置是至关重要的,买家在逛淘宝的时分根本都不会漫无意图,大多数买家都会 ...

  4. 淘宝技术牛p博客整理

    转自:http://blog.csdn.net/zdp072/article/details/19574793 淘宝技术委员会是由淘宝技术部高级技术人员组成的一个组织,共分为Java分会.C/C++分 ...

  5. 淘宝技术牛人牛博客学习

    淘宝技术委员会是由淘宝技术部高级技术人员组成的一个组织,共分为Java分会.C/C++分会.算法分会:数据分会:UED分会.测试分会.系统分会七个分会. 淘宝技术委员会的愿景是淘宝成为技术人才向往的乐 ...

  6. 【转】淘宝技术牛p博客整理

    转自:http://blog.csdn.NET/zdp072/article/details/19574793 淘宝技术委员会是由淘宝技术部高级技术人员组成的一个组织,共分为Java分会.C/C++分 ...

  7. 10亿级!淘宝大规模图像检索引擎算法设计概览

    进入21世纪以来,伴随着互联网的高速发展,通过图像和视频来进行需求表达越来越成为大家的习惯. 图像搜索与识别算法使得图像视频内容得以结构化和数字化,以便可以在各种检索和分析引擎中被最大限度地挖掘和利用 ...

  8. 阿里开源首个移动AI项目,淘宝同款推理引擎

    乾明 发自 凹非寺  量子位 报道 | 公众号 QbitAI 淘宝上用的移动AI技术,你也可以用在自己的产品中了. 刚刚,阿里巴巴宣布,开源自家轻量级的深度神经网络推理引擎MNN(Mobile Neu ...

  9. 淘宝开源深度学习端侧推理引擎 MNN

    本文由淘宝技术授权,转载请联系原作者 与 Tensorflow.Caffe2 等同时覆盖训练和推理的通用框架相比,MNN 更注重在推理时的加速和优化,解决在模型部署的阶段的效率问题,从而在移动端更高效 ...

  10. 淘宝网热浪引擎平台资费规则

    淘宝网日前发布<热浪引擎平台资费规则>变更公示通知(以下简称公告). 公告称,为了规范和提升淘宝直播热浪引擎平台的市场管理秩序,为商家和主播.达人等多方营造安全安心的交易合作环境,在此通知 ...

最新文章

  1. vs2017 open从v_宣布#Open2017,这是面向开发人员的除夕直播流
  2. 前端开源项目周报0425
  3. Spring容器中Bean的作用域
  4. shell+飞信实现网站监控
  5. mybatis报错,找不到对应mapper文件
  6. LiveVideoStackCon 专题评审团招募进行中
  7. 《c语言从入门到精通》看书笔记——第1章 C语言的概述
  8. java事务超时时间,java – 如何在WebSphere Liberty Batch中配置事务超时?
  9. vSphere虚拟机磁盘热扩容
  10. python中的__file__、os.path.realpath(__file__)、os.path.dirname(os.path.realpath(__file__))
  11. css总常用的font-family
  12. VIBE算法(一)——论文翻译
  13. Iphone 铃声制作及同步
  14. 安卓webview开发简介
  15. python-shixian考拉兹猜想
  16. 爬山法、随机重启爬山法、模拟退火算法对八皇后问题和八数码问题的性能测试...
  17. 数据分析前景怎么样?好不好?
  18. Win11dns异常怎么修复?Win11修复dns异常的三种方法
  19. 【stm32】ADC的规则通道和注入通道混合使用
  20. arctanx麦克劳林公式推导过程_点到线的距离公式推导过程

热门文章

  1. 系统架构设计-计算机网络知识点
  2. C语言面向对象(下):驱动设计技巧
  3. 为flash游戏终极实用提速
  4. MFC的消息处理模式
  5. bmp格式如何转换成jpg?
  6. 【实现windowsxp系统自动快速装机的方法】
  7. win7win8 64位汇编开发环境合集安装与设置
  8. PMP 考点 第七章 项目成本管理
  9. 摄影系列:单反相机入门知识
  10. 概率论 方差公式_2020考研数学:概率论核心考点与常见题型(上)