日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Camunda BPM的总体架构介绍

發布時間:2023/12/18 编程问答 61 如意码农
生活随笔 收集整理的這篇文章主要介紹了 Camunda BPM的总体架构介绍 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

?? Camunda是一個基于Java的框架,支持用于工作流和流程自動化的BPMN、用于案例管理的CMMN和用于業務決策管理的DMN。

??本篇文章我們僅考慮BPMN流程引擎,先不涉及CMMN和DMN引擎。就流程引擎而言,Camunda是一個靈活的工作流框架,它的核心是一個在Java虛擬機內部運行的原生BPMN 2.0流程引擎,因此它可以嵌入到任何Java應用程序或運行時容器中。Camunda與Java EE 集成,并可以與Spring Framework和Spring Boot完美匹配。

一、總體架構

??Camunda BPMS到底包括哪些功能,我們拿官方的一張架構圖進行解讀分析。

1.從BPM應用維度看

??Camunda分為流程設計和流程運行兩個階段,見圖中最下方的藍色大箭頭,Model和Execute,按照這兩個階段,Camunda劃分為兩大部分功能,對應設計階段的功能有 Modeler,對應運行階段的功能有Engine、TaskList、Cockpit、Admin。

2.從BPM功能維度看

??Camunda包括了流程設計器(Modeler)、流程引擎(Engine)、API接口(REST/Java API)、任務列表(TaskList)、流程管理控制臺(Cockpit)、系統管理工具(Admin)。在Camunda商業產品中還包括了流程監控預警工具(Optimize)、流程協同設計工具(Cawemo)。這里重點先說一下Camunda流程設計器,支持兩種模式,一種是富客戶端的流程建模工具Camunda Modeler,需要在客戶端安裝;另一種是基于瀏覽器的流程設計器bpmn.io,這兩款軟件均開源。

3.從BPM角色維度看

??Camunda分為業務分析師、流程開發工程師、最終用戶、流程管理員、系統管理員這幾個角色,每個角色對應BPMS不同的功能。業務分析師、流程開發工程師使用流程設計器(Modeler)進行流程建模,最終用戶使用任務列表(TaskList)進行流程發起和審批,流程管理員使用流程管理控制臺(Cockpit)進行流程管理,比如流程暫停恢復、流程異常干預等,系統管理員使用系統管理工具(Admin)進行系統管理,比如組織用戶管理、權限管理等。

二、集成能力

1.支持與Spring框架集成

??Camunda支持與spring框架集成,把 camunda-engine-spring框架引入到項目的maven模塊內,它可以與Spring 3、4或5版本一起使用,具體集成過程后面有文章單獨介紹。

2.支持與spring boot集成

??后面文章專題介紹

3.支持與CDI and Java EE 集成

??CDI (Context and Dependency Injection)是 Java EE6的標準和依賴注入,Camunda通過camunda-engine-cdi模塊集成可利用camunda引擎的配置和cdi的可擴展性。

4.支持與Runtime Container 集成

??支持與tomcat、JBoss等常見的運行容器集成。

三、部署架構

??Camunda BPM是一個靈活的框架,支持嵌入式、分布式、集群等多種部署模式。

1.嵌入式部署

??流程引擎以Jar包方式添加到應用程序中,通過這種方式,可以在應用程序生命周期中輕松啟動和停止流程引擎。

2.基于web容器啟動,多應用共享

??流程引擎在運行時容器(Servlet容器、應用程序服務器等)中啟動,流程引擎作為容器服務提供,可以由容器內部署的所有應用程序共享。這種方式在實際應用場景中不多見。

3.獨立部署,多應用共享

??在這種情況下,流程引擎獨立部署,通過網絡提供服務,網絡上運行的不同應用程序可以通過遠程通信通道與進程引擎交互,遠程訪問流程引擎的最簡單方法是使用內置的REST服務接口。在企業級流程中心部署架構中,這是一種最常見的部署模式,在現在的微服務部署架構中,也可以采取這種方式。

4.集群部署

??為了提供擴展或故障轉移功能,流程引擎可以分布到集群中的不同節點,每個流程引擎實例都必須連接到共享數據庫。Camunda BPM不提供現成的負載平衡功能,可以采用nginx等第三方負載均衡軟件實現。

總結

以上是生活随笔為你收集整理的Camunda BPM的总体架构介绍的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。