首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

jBPM 4.0 開發指南:第 2 章 流程虛擬機核心原理

     編輯:Java 相關知識

第 2 章 流程虛擬機核心原理

2.1 核心設計理念

為支援多種流程語言與活動的插件化擴展,jBPM 基於流程虛擬機(PVM)架構。PVM 本質是一個可執行圖形框架:流程定義表達為具有圖形結構的執行流。

關鍵分離:PVM 將流程定義(結構)與活動行為(邏輯)徹底分離。引擎負責根據圖形結構推進執行流,具體業務邏輯委派給可插拔的 Java 類(ActivityBehaviour)。jPDL 等語言僅是活動行為實現與解析器的集合。

流程定義實例

圖 2.1 流程定義實例圖

2.2 靜態結構與運行時映射

流程結構類圖

圖 2.2 流程結構 UML 類圖

  • 流程定義由活動與轉移組成,屬靜態結構
  • 活動運行時行為封裝於 ActivityBehaviour 實現中
  • 活動可為等待狀態:控制流來自外部(人工任務、異步服務),執行狀態可持久化

2.3 執行模型:指針與樹結構

執行實例

圖 2.3 執行實例:指向當前活動的指針

單一流程定義可啟動多個執行實例。為支援併發同步路徑,執行採用父子樹結構:流程實例為根節點,分支創建子執行,合併終止子執行。

執行類圖

圖 2.4 執行類圖:父子繼承關係支援併發建模

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved