(一)什么是流程引擎?为什么学习流程引擎?(的顺序是什么)
本編文章將詳細介紹什么是流程引擎,為什么學習,以及為什么選擇activiti作為學習的開源框架。并且將介紹本專欄的一個詳細學習目錄。
1.什么是流程引擎?
流程引擎說白了就是用來驅動業務按照我設定的固定流程去流轉的東西,在復雜多變的業務情況下,使用既定的流程能夠大大降低我們設計業務的成本,并且保證了我們業務執行的準確性。
eg1 : 企業常見審批
eg2:網上購物業務
2.為什么需要學習流程引擎?
| 早期 | 現在 |
|---|---|
| 企業OA | 電商購物 |
| CRM | 金融出行 |
| 流程審批 | 中臺支撐 |
| … | … |
流程引擎較為常見的應用系統是在“OA”等需要企業辦公系統中,為無紙辦公,信息化辦公帶來了巨大的作用。目前成熟的流程引擎已經廣泛運用到“電商”等領域,新的應用則是在中臺系統中做業務拓展的支撐。
為什么要學習流程流引擎總結為以下幾點:
1.流程引擎在互聯網公司快速盛行,不可或缺
2.流程引擎是java中高級工程師進階利器
3.掌握流程引擎技術可以提升技術架構和業務建模能力
4.為你的技能棧填上重重的一筆,有效提高你大型互聯網公司面試的資本
流程引擎對業務和開發可以起到非常良好的作用:可以快速響應、靈活調整線上流程;業務和開發基于流程模型進行溝通,基于業務建模快速部署;流程可視化,方便查看流程的運行進展
流程機制對團隊的作用:提高效率,減少等待;規范行為,落實制度;協同內外,快速響應;監控全面,提升執行。
3.為什么選擇activiti?
activiti官網
activiti與jBPM的對比:
1.目前這二者基本趨勢可以看到activiti是越來越比jBPM運用廣泛,這是大勢所趨
2.二者主要特性對比如下:
| 技術組成 | Activiti | jBPM5 |
|---|---|---|
| 數據庫持久層ORM | MyBatis3 | Hibernate3 |
| 持久化標準 | 無 | JPA規范 |
| 事務管理 | MyBatis機制/Spring事務控制 | Bitronix,基于JTA事務管理 |
| 數據庫連接方式 | Jdbc/DataSource | Jdbc/DataSource |
| 支持數據庫 | Oracle、SQL Server、MySQL等多數數據庫 | Oracle、SQL Server、MySQL等多數數據庫 |
| 設計模式 | Command模式、觀察者模式等 | |
| 內部服務通訊 | Service間通過API調用 | O基于Apache Mina異步通訊 |
| 集成接口 | SOAP、Mule、RESTful | 消息通訊 |
| 支持的流程格式 | BPMN2、xPDL、jPDL等 | 目前僅只支持BPMN2 xml |
| 引擎核心 | PVM(流程虛擬機) | Drools |
| 技術前身 | jBPM3、jBPM4 | Drools Flow |
| 所屬公司 | Alfresco | jBoss.org |
總結如下:
activiti是java實現了工業領域BPMN2.0的規范標準框架,老牌、成熟穩定
目前用戶眾多、社區活躍、趨勢較好
易于上手,基于Spring、MyBatis常用互聯網技術堆棧
總結
以上是生活随笔為你收集整理的(一)什么是流程引擎?为什么学习流程引擎?(的顺序是什么)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php下载的功能
- 下一篇: PHP的Smarty较为完整的笔记