Mistral 工作流組件之一 概述


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都會存入到數據庫中。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM