Mistral的前世今生:  Mistral是Mirantis公司为Openstack开发的工作流组件,提供Workflow As a Service.典型的应用场景包括任务计划服务Cloud Cron,任务调度Task Scheduling, 复杂的运行时间长的业务流程等。对应的是AWS的SWS(Simple Workflow Serivce)。

Mistral的核心概念有如下几个:

  • Workbook
  • Workflow
  • Task
  • Action
  • Workflow Execution

Workbook:工作簿。可以理解为工作流任务的文档,纪录了工作流,任务以及任务的执行顺序,依赖关系,以及每个任务的输入输出等。从开发者的角度看,可以认为它是一种工作流任务的文档组织形式,或者命名空间。

Workflow:工作流。比Workbook小的单元。描述了任务,动作的执行顺序,依赖关系。 一个Workbook可以有多条Workflow,也可以只有一条Workflow。

Task: 描述Workflow中包含的工作步骤。

Action: Mistral中最小的单位,描述了某一个具体的动作,比如执行一个http请求,或者发一个e-mail等等。

Workflow Execution: 工作流执行纪录,每个Workflow的执行纪录都会存数据库,可以供日后查询,或者重新执行。

Mistral官方文档描述了其中几个概念之间的关系:

Mistral Server的架构

官网的图描述了其架构

  • 服务端收到API请求,建立workflow队列
  • 执行引擎从队列中取出一个workflow交给调度器
  • 调度器解析出task列表,生成task队列
  • task调度器调度一个个task执行

这些workflows, executions, tasks, actions, triggers都会存入到数据库中。

Mistral 工作流组件之一 概述的更多相关文章

  1. mistral 工作流组件之二 思维导图

    Mistral 思维导图

  2. winform快速开发平台 -> 工作流组件(仿GooFlow)

    对于web方向的工作流,一直在用gooflow对于目前我的winform开发平台却没有较好的工作流组件.  针对目前的项目经验告诉我们.一个工作流控件是很必要的. 当然在winform方面的工作流第三 ...

  3. 实例演示使用RDIFramework.NET 框架的工作流组件进行业务流程的定义—请假申请流程-Web

    实例演示使用RDIFramework.NET 框架的工作流组件 进行业务流程的定义—请假申请流程-Web 参考文章: RDIFramework.NET — 基于.NET的快速信息化系统开发框架 — 系 ...

  4. PHP 的工作流组件记录

    我目前只知道在有审批流程中会用到工作流. 不过我我还没用过,还不知道怎么使用. 暂且先记录一下,目前我找到的几个 PHP 工作流组件. symfony https://github.com/symfo ...

  5. GDI绘制Winform工作流组件、具有独立图层的增删处理、防PPT效果

    最近接了个小项目10K.用了2个下班时间写完,共花费了6-7个小时完成.如有同类需求的可以与本人联系,QQ:120772981 功能目标: 需要写一个仿PPT画泳道图的组件.之前写过工作流的组件,其实 ...

  6. HDFS(Hadoop Distributed File System)的组件架构概述

    1.hadoop1.x和hadoop2.x区别 2.组件介绍 HDFS架构概述1)NameNode(nn): 存储文件的元数据,如文件名,文件目录结构,文件属性(生成时间,副本数,文件权限),以及每个 ...

  7. .NET Core/.NET5/.NET6 开源项目汇总3:工作流组件

    系列目录     [已更新最新开发文章,点击查看详细] 开源项目是众多组织与个人分享的组件或项目,作者付出的心血我们是无法体会的,所以首先大家要心存感激.尊重.请严格遵守每个项目的开源协议后再使用.尊 ...

  8. F2工作流引擎之 概述(一)

    简介 工作流应该算是基础框架软件,主要用于流程的重组和优化,它有广阔的应用领域.在java下有很多优秀的开源工作流可以选择比如activit5.jpbm4等,在.net下却几乎找不到令人满意的工作流引 ...

  9. Android开发之 Android 的基本组件的概述

    Android是一个为组件化而搭建的平台,它的应用是由一些零散的有联系的组件组成,并通过AndroidManifest.xml文件 把它们绑定起来. Android常用的组件有: Activity(活 ...

随机推荐

  1. IntelliJ IDEA设置JDK

    File→Project Structure→Project SDK→New   来自为知笔记(Wiz)

  2. java学习笔记(三)字符串

    字符串String 创建方法: 一·通过new创建  String  str1= new String("abc"); 二 直接创建   String str2="abc ...

  3. TMS320C54x系列DSP的CPU与外设——第1章 绪论

    第1章 绪论 TMS320C54x DSP是TMS320系列DSP产品中的定点数字信号处理器.C54x DSP满足了实时嵌入式应用的一些要求,例如通信方面的应用. C54x的中央处理单元(CPU)具有 ...

  4. 最小生成树算法(Prim,Kruskal)

    边赋以权值的图称为网或带权图,带权图的生成树也是带权的,生成树T各边的权值总和称为该树的权. 最小生成树(MST):权值最小的生成树. 生成树和最小生成树的应用:要连通n个城市需要n-1条边线路.可以 ...

  5. BEvent_标准控件Event的用法(案例)(待整理)

    2014-06-06 Created By BaoXinjian

  6. CF 518 D. Ilya and Escalator

    Ilya got tired of sports programming, left university and got a job in the subway. He was given the ...

  7. SaveFileDialog的用法

    #region 保存对话框 private void ShowSaveFileDialog() { //string localFilePath, fileNameExt, newFileName, ...

  8. VS2008 调试记录

    <以后追加> F10 单步调试 F11 进入函数 SHIFT+F11  推出当前函数

  9. js跳转页面方法整理

    1.window.location.href方式 window.location.href="http://www.zgw8.com"; 2.window.navigate方式跳转 ...

  10. CSS学习笔记之定位

    position 有4中不同类型的定位,分别为static.relative.absolute.fixed 1.static 元素框正常生成.块级元素生成一个矩形框,作为文档流的一部分,行内元素则会创 ...