Activiti 工作流引擎系列--01 初探
阿新 • • 發佈:2019-02-04
這段時間簡單摸了一下Activiti 工作流引擎,把整理出來的slides在這裡稍作記錄。歡迎討論!
什麼是工作流?
我們生活中工作流很常見了,比如銀行取款,比如工作報銷。背後都有一套既定的流程在那裡。舉個例子:BPMN 2.0
需要去設計一套基於工作流的系統,就離不開工作流引擎。在進入工作流引擎之前,我們首先來談談BPMN 2.0. 這是一套定義工作流的語言。業界並沒有官方的release給出工作流的定義,只有這套被廣為接受的約定俗成的標準。 其中定義瞭如task、流向(sequence flow)、起止事件(start event、 end event)等節點模型和其含義。 而工作流引擎,說白了,就是去解析這套語言畫出來的流程例項。工作流引擎之常見架構設計
其實基於工作流引擎的架構設計也比較通用了。下圖是我自己的一些設想:什麼是Activiti?
OK,我們進入正題。首先是對Activiti的介紹。這款引擎適用於 產品經理、特定業務方和開發人員。為什麼說特定業務方呢,因為會去使用Activiti自帶的WEB UI介面的業務方畢竟是不多的。。。 Activiti會去解析流程中定義的節點,同時觸發對應的操作,如讀寫資料庫,如對外部服務的呼叫。 其特別適用於BPM的場景,僅僅一個war包就可以跑起來,同時跟spring天生結合在一起,可以非常方便地整合到系統中來。
Activiti Community
Getting Started
接下來談談如何去啟動Activiti,來一次初體驗。 其啟動的成本是非常低的,在任意機器上安裝一個tomcat,然後去官網下載war包,放到tomcat目錄下,啟動tomcat,Activiti就啟動起來了。 在專案中,也只需要新增一個簡單的dependency即可。自帶restful的API,同時有非常好的指導文件。直接在官網上就查得到。OK,初探到此為止。 在第二篇中,會對Activiti的架構做一些簡介。