<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          工作流引擎技術(shù)介紹-Flowable與Activiti7

          共 3939字,需瀏覽 8分鐘

           ·

          2021-10-12 18:00


          ? 以前總聽說Activiti作者跑去開發(fā)Flowable了,估計大部分人對Activiti和Flowable區(qū)別也僅僅知道作者跑了。哈哈哈......但對于Activiti和Flowable以及Camunda的選型對比一直是有人問的,當(dāng)然我也好奇,就一個作者嘛,一個產(chǎn)品又不是一個人的功勞,產(chǎn)品團隊其他人也是有思路的嘛,只要有人,產(chǎn)品就能朝一定方向開發(fā)著。但當(dāng)我看了Activiti7的官網(wǎng)介紹和文檔后,不得不感嘆人與人之間的想法差距還真是非常大的。


          ?Flowable前面文章有簡單的介紹,使用Docker進行部署,很快就能體驗Flowable,體驗完后都能對Flowable功能有一定認(rèn)識。網(wǎng)上對比功能點,API的文章還是比較多的。我們這里先看Activiti官網(wǎng)介紹及文檔。


          01


          Activiti7


          參考:

          https://www.gitbook.com/book/activiti/activiti-7-developers-guide/details

          ?

          ? Activiti目前版本最新為7.1.0-M15,進入官網(wǎng)首頁界面,很清晰的就能看出,Activiti7工作重點在支持云生態(tài)。Activiti重點工作在于適配Docker、kubernates,適配Jenkins等devops工具。Activiti 7專注維護流程核心引擎,其他模板IDM (User / Groups / Memberships)身份驗證、Forms表單、History Service歷史查詢服務(wù)、Job executor任務(wù)執(zhí)行器、Timers定時器、Email/Notification Service 郵件通知服務(wù)等等將被棄用或進行重構(gòu),以支持與大多數(shù)云基礎(chǔ)設(shè)施已經(jīng)提供的第三方組件的集成。



          ?? 誠然,做這方面是有一定熱點,也有一定必要,但個人覺得迷惑的是,流程部分很多功能都沒完善,不管是設(shè)計器,還是管理端功能,還是引擎核心本身都有很多急需并且必要做的東西,先去做流程云構(gòu)建,顯得有點兩邊半桶水。體驗上不會好。(純個人看法


          依賴:

          Activiti Cloud:

          <dependencyManagement>   <dependencies>     <dependency>       <groupId>org.activiti.cloudgroupId>       <artifactId>activiti-cloud-dependenciesartifactId>       <version>7.1.0-M15version>       <scope>importscope>       <type>pomtype>     dependency>   dependencies> dependencyManagement>

          Activiti Core

          <dependencyManagement>    <dependencies>      <dependency>        <groupId>org.activitigroupId>        <artifactId>activiti-dependenciesartifactId>        <version>7.1.0-M15version>        <scope>importscope>        <type>pomtype>      dependency>    dependencies>  dependencyManagement>



          ? activiti7很大精力都用在構(gòu)建云生態(tài),工作重點都放在將服務(wù)部署在云上,減少對Activiti依賴的耦合,需要使用Activiti的系統(tǒng)只需要通過調(diào)用http接口的方式來實現(xiàn)工作流能力的整合,將工作流業(yè)務(wù)托管上云。

          ?對于不同人員如專家、開發(fā)人員、運維人員、用戶、管理者,劃分出對應(yīng)關(guān)注的微服務(wù)應(yīng)用。


          Activiti Cloud提供部分基礎(chǔ)構(gòu)建模塊:


          • Activiti云基礎(chǔ)設(shè)施

          ??? Activiti Cloud 基礎(chǔ)服務(wù)將部署網(wǎng)關(guān)、身份管理/單點登錄、分布式日志/跟蹤/監(jiān)控。

          • Activiti云應(yīng)用

          1. Activiti Cloud Runtime Bundle: 為業(yè)務(wù)提供執(zhí)行運行時支持(如業(yè)務(wù)流程、任務(wù)、決策表、決策樹等)。

          2. Activiti Cloud Connectors: 提供與外部系統(tǒng)的雙向連接

          3. Activiti Cloud Audit Service: 提供從或多個運行時收集信息(事件)的審計跟蹤功能。

          4. Activiti Cloud Query Service: 提供對一個或多個運行時生成的信息的讀訪問。

          5. Activiti Cloud Notification Service:與Query Service一起,Notification Service使用關(guān)于應(yīng)用程序狀態(tài)的訂閱和推送通知來支持核心構(gòu)建模塊。




          • Activiti云Modeler??? 推薦使用的設(shè)計器

          ?? Activiti7開發(fā)團隊已經(jīng)完全拋棄了IntelliJ IDEA/Eclipse中的流程插件以及Modeler設(shè)計器。開始使用了bpmn.io提供的bpmn-js設(shè)計器。目前僅支持元素,空結(jié)束事件、空啟動事件,用戶任務(wù)、服務(wù)任務(wù)、調(diào)用活動(callActivity),排他網(wǎng)關(guān)和并行網(wǎng)關(guān)等。




          快速體驗:

          • 安裝Docker for Desktop 或 Docker Toolbox

          • 安裝Docker-compose

          • 安裝 GNU Make。通常Linux和Mac系統(tǒng)已經(jīng)安裝了, window系統(tǒng)使用Chocolatey 來安裝.

          • 安裝 Git Bash 終端 . 通常Linux和Mac系統(tǒng)已經(jīng)安裝了. window可以使用 Chocolatey Git Install 來安裝


          下載示例代碼:

          git?clone?https://github.com/Activiti/activiti-cloud-examples
          │ Activiti v7 REST API.postman_collection.json # postman api接口文件├─docker # docker方式,好像官網(wǎng)沒有這方面使用說明了│ │ enabled_plugins│ │ frontend-docker-compose.yml # 前端UI模塊│ │ infrastructure-docker-compose.yml # 基礎(chǔ)模塊│ │ modelling-docker-compose.yml # 流程圖繪制管理模塊│ ││ └─apps│ apps.json│ default-app.json└─docker-compose # docker-compose 方式????????.env????????????????????????????#?配置文件??--修改ip為本機IP activiti-realm.json # realm 配置文件 docker-compose.yml Dockerfile enabled_plugins Makefile nginx.conf README.md

          啟動服務(wù):

          啟動設(shè)計器:make modeler訪問:http://$DOCKER_IP/modeling  默認(rèn)賬號:modeler/password啟動例子服務(wù):make application訪問keycloak: http://$DOCKER_IP//auth/ 默認(rèn)賬號是 admin/admin
          啟動所有服務(wù):make all 或者 docker-compose up


          測試接口:前面我們了解到,云服務(wù)目前以Http接口提供業(yè)務(wù)支撐。

          配置PostMan1.將 activiti-cloud-examples / Activiti v7 REST API.postman_collection.json導(dǎo)入到Postman中2.配置全局變量 gateway、idm、realm變量名  變量值  變量說明gateway  http://192.168.1.33  網(wǎng)關(guān)地址,即你自己電腦的IP(DOCKER_IP)idm  http://192.168.1.33  鑒權(quán)地址,identity Manager地址realm??activiti??.env文件中填寫的?KEYCLOAK_REALM
          3.先調(diào)用 keycloak中的接口獲取token(訪問憑證)。然后就可以調(diào)用其他接口



          Flowable:

          自從Activiti分離開后,F(xiàn)lowable對引擎本身的關(guān)注是非常充足的。

          1. CMMN – 案例管理開放標(biāo)準(zhǔn) (絕對讓人眼前一亮,慢慢探索會發(fā)現(xiàn)能更靈活的處理很多業(yè)務(wù))

          2. DNN - 決策表

          3. 事件流-對Kafka / Confluent、RabbitMQ、AWS SQS還是ActiveMQ/JMS提供開箱即用支持。

          4. 對非關(guān)系型數(shù)據(jù)庫提供支持,如MongDB。

          5. 新功能如異步歷史、異步執(zhí)行器、動態(tài)注入流程片段。

          6. 流程元素完善和執(zhí)行性能提升,以及完善引擎管理客戶端。

          結(jié)論:

          ? Activiti7以后,對于流程引擎本身及相關(guān)引擎功能關(guān)注度并不高,核心很大精力放在構(gòu)建其云生態(tài)環(huán)境,而這點,對于中小公司可能并不怎么關(guān)心,中小公司關(guān)心的還是流程引擎本身的功能與性能,如何快速開展業(yè)務(wù)開發(fā),以及后續(xù)升級運維。這點,F(xiàn)lowable分離出去做了很多完善。



          ? 接下來先看看原生Flowable的幾個小例子。


          瀏覽 252
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  天天射夜夜爽 | 成人在线免费网站 | 91麻豆精品国产91久久 | 国产深夜福利 | 欧美一区二区三区成人片下载 |