本技術(shù)涉及計算機,提供了一種流程編排引擎的實現(xiàn)方法、裝置及存儲介質(zhì)。
背景技術(shù):
1、目前,在企業(yè)級應(yīng)用系統(tǒng)的開發(fā)過程中,隨著業(yè)務(wù)需求的不斷復雜化,為保證業(yè)務(wù)系統(tǒng)中業(yè)務(wù)流程的高效執(zhí)行,往往需要引入相應(yīng)的流程編排引擎,來實現(xiàn)各種復雜的流程支撐業(yè)務(wù),以及實現(xiàn)業(yè)務(wù)流程的自動化流轉(zhuǎn)。
2、在業(yè)務(wù)流程流轉(zhuǎn)的過程中會產(chǎn)生各種各樣的流程節(jié)點。現(xiàn)有流程編排引擎的實現(xiàn)方法往往以業(yè)務(wù)功能為核心,即按照業(yè)務(wù)需求構(gòu)建圖形化的流程節(jié)點,將流程節(jié)點按照帶有條件和方向的導向線連接形成業(yè)務(wù)流程圖,并將設(shè)計好的業(yè)務(wù)流程圖保存并發(fā)布至流程編排引擎中,流程編排引擎再根據(jù)業(yè)務(wù)系統(tǒng)的操作,自動將流程流轉(zhuǎn)至對應(yīng)的節(jié)點進行處理。
3、但是,為了滿足復雜業(yè)務(wù)的需要,企業(yè)級應(yīng)用系統(tǒng)中往往會存在多種流程分支和流程對接業(yè)務(wù),現(xiàn)有的流程編排引擎需要針對多個業(yè)務(wù)流程開發(fā)對應(yīng)的功能實現(xiàn)代碼,導致開發(fā)工作量大,系統(tǒng)的兼容性及擴展性較差。
技術(shù)實現(xiàn)思路
1、本技術(shù)實施例提供一種流程編排引擎的實現(xiàn)方法、裝置及存儲介質(zhì),用以節(jié)省代碼的開發(fā)成本,并提高系統(tǒng)的兼容性及擴展性。
2、本技術(shù)提供的具體技術(shù)方案如下:
3、第一方面,本技術(shù)實施例提供了一種流程編排引擎的實現(xiàn)方法,應(yīng)用于服務(wù)器,方法包括:
4、對接收到的流程創(chuàng)建請求進行解析得到待創(chuàng)建的目標流程編排的類型,其中,流程創(chuàng)建請求是客戶端針對流程編排軟件觸發(fā)的,流程編排軟件運行在客戶端上;
5、基于預(yù)先設(shè)置的流程類型與目標節(jié)點之間的對應(yīng)關(guān)系,確定目標流程編排包括的各流程節(jié)點以及各流程節(jié)點之間的關(guān)聯(lián)關(guān)系,并基于各流程節(jié)點和關(guān)聯(lián)關(guān)系創(chuàng)建目標流程編排;
6、基于預(yù)先設(shè)置的目標節(jié)點與業(yè)務(wù)之間的對應(yīng)關(guān)系,分別為目標流程編排中的各流程節(jié)點配置相對應(yīng)的節(jié)點業(yè)務(wù);
7、按照關(guān)聯(lián)關(guān)系遍歷各流程節(jié)點,并運行各流程節(jié)點相對應(yīng)的節(jié)點業(yè)務(wù)。
8、可選地,基于預(yù)先設(shè)置的流程類型與目標節(jié)點之間的對應(yīng)關(guān)系,確定目標流程編排包括的各流程節(jié)點以及各流程節(jié)點之間的關(guān)聯(lián)關(guān)系,包括:
9、在預(yù)先設(shè)置的流程類型與目標節(jié)點之間的對應(yīng)關(guān)系中查找與待創(chuàng)建的目標流程編排的類型相同的流程類型;
10、將流程類型與目標節(jié)點之間的對應(yīng)關(guān)系中與查找到的流程類型對應(yīng)的各目標節(jié)點確定為目標流程編排包括的各流程節(jié)點;
11、基于流程類型指示的執(zhí)行步驟確定各流程節(jié)點之間的關(guān)聯(lián)關(guān)系。
12、可選地,基于各流程節(jié)點和關(guān)聯(lián)關(guān)系創(chuàng)建目標流程編排,包括:
13、將各流程節(jié)點按照關(guān)聯(lián)關(guān)系進行連接,并基于連接后的各流程節(jié)點創(chuàng)建目標流程編排。
14、可選地,基于預(yù)先設(shè)置的目標節(jié)點與業(yè)務(wù)之間的對應(yīng)關(guān)系,分別為目標流程編排中的各流程節(jié)點配置相對應(yīng)的節(jié)點業(yè)務(wù),包括:
15、在預(yù)先設(shè)置的目標節(jié)點與業(yè)務(wù)之間的對應(yīng)關(guān)系中分別查找與目標流程編排中的各流程節(jié)點相同的各個目標節(jié)點;
16、將目標節(jié)點與業(yè)務(wù)之間的對應(yīng)關(guān)系中與查找到的各個目標節(jié)點相對應(yīng)的業(yè)務(wù)確定為節(jié)點業(yè)務(wù);
17、分別為目標流程編排中的各流程節(jié)點配置相對應(yīng)的節(jié)點業(yè)務(wù)。
18、可選地,通過以下方式預(yù)先設(shè)置目標節(jié)點與業(yè)務(wù)之間的對應(yīng)關(guān)系:
19、分別確定各個目標節(jié)點對應(yīng)的業(yè)務(wù)的執(zhí)行內(nèi)容;
20、若任意兩個目標節(jié)點對應(yīng)的業(yè)務(wù)的執(zhí)行內(nèi)容相同,則將任意兩個目標節(jié)點均與執(zhí)行內(nèi)容相同的同一個業(yè)務(wù)進行對應(yīng);
21、若任意兩個目標節(jié)點對應(yīng)的業(yè)務(wù)的執(zhí)行內(nèi)容不同,則將任意兩個目標節(jié)點分別與執(zhí)行內(nèi)容不同的兩個業(yè)務(wù)進行對應(yīng)。
22、可選地,運行各流程節(jié)點相對應(yīng)的節(jié)點業(yè)務(wù)之前,還包括:
23、為目標流程編排設(shè)置實時監(jiān)控流程;
24、運行各流程節(jié)點相對應(yīng)的節(jié)點業(yè)務(wù),包括:
25、當運行任意一個流程節(jié)點相對應(yīng)的節(jié)點業(yè)務(wù)時,運用實時監(jiān)控流程檢測流程節(jié)點的節(jié)點參數(shù)是否正確,以及,運用實時監(jiān)控流程檢測上游流程節(jié)點的結(jié)果參數(shù)和任意一個流程節(jié)點的輸入?yún)?shù)是否匹配,其中,上游流程節(jié)點為在任意一個流程節(jié)點之前運行節(jié)點業(yè)務(wù)的節(jié)點;
26、若節(jié)點參數(shù)錯誤,或者,若結(jié)果參數(shù)和輸入?yún)?shù)不匹配,則向外發(fā)出錯誤提示信息。
27、可選地,按照關(guān)聯(lián)關(guān)系遍歷各流程節(jié)點,并運行各流程節(jié)點相對應(yīng)的節(jié)點業(yè)務(wù),包括:
28、在各流程節(jié)點中查找初始流程節(jié)點,其中,初始流程節(jié)點是根據(jù)接收到的流程發(fā)起請求確定的,流程發(fā)起請求是客戶端針對目標流程編排發(fā)起的,初始流程節(jié)點為各流程節(jié)點中第一個運行節(jié)點業(yè)務(wù)的流程節(jié)點;
29、以初始流程節(jié)點為起點,按照關(guān)聯(lián)關(guān)系遍歷各流程節(jié)點,并在遍歷到任意一個流程節(jié)點時運行流程節(jié)點相對應(yīng)的節(jié)點業(yè)務(wù)。
30、第二方面,本技術(shù)實施例還提供了一種流程編排引擎的實現(xiàn)裝置,包括:
31、解析單元,用于對接收到的流程創(chuàng)建請求進行解析得到待創(chuàng)建的目標流程編排的類型,其中,流程創(chuàng)建請求是客戶端針對流程編排軟件觸發(fā)的,流程編排軟件運行在客戶端上;
32、創(chuàng)建單元,用于基于預(yù)先設(shè)置的流程類型與目標節(jié)點之間的對應(yīng)關(guān)系,確定目標流程編排包括的各流程節(jié)點以及各流程節(jié)點之間的關(guān)聯(lián)關(guān)系,并基于各流程節(jié)點和關(guān)聯(lián)關(guān)系創(chuàng)建目標流程編排;
33、配置單元,用于基于預(yù)先設(shè)置的目標節(jié)點與業(yè)務(wù)之間的對應(yīng)關(guān)系,分別為目標流程編排中的各流程節(jié)點配置相對應(yīng)的節(jié)點業(yè)務(wù);
34、運行單元,用于按照關(guān)聯(lián)關(guān)系遍歷各流程節(jié)點,并運行各流程節(jié)點相對應(yīng)的節(jié)點業(yè)務(wù)。
35、可選地,基于各流程節(jié)點和關(guān)聯(lián)關(guān)系創(chuàng)建目標流程編排,創(chuàng)建單元用于:
36、將各流程節(jié)點按照關(guān)聯(lián)關(guān)系進行連接,并基于連接后的各流程節(jié)點創(chuàng)建目標流程編排。
37、可選地,基于預(yù)先設(shè)置的目標節(jié)點與業(yè)務(wù)之間的對應(yīng)關(guān)系,分別為目標流程編排中的各流程節(jié)點配置相對應(yīng)的節(jié)點業(yè)務(wù),配置單元用于:
38、在預(yù)先設(shè)置的目標節(jié)點與業(yè)務(wù)之間的對應(yīng)關(guān)系中分別查找與目標流程編排中的各流程節(jié)點相同的各個目標節(jié)點;
39、將目標節(jié)點與業(yè)務(wù)之間的對應(yīng)關(guān)系中與查找到的各個目標節(jié)點相對應(yīng)的業(yè)務(wù)確定為節(jié)點業(yè)務(wù);
40、分別為目標流程編排中的各流程節(jié)點配置相對應(yīng)的節(jié)點業(yè)務(wù)。
41、可選地,通過以下方式預(yù)先設(shè)置目標節(jié)點與業(yè)務(wù)之間的對應(yīng)關(guān)系:
42、分別確定各個目標節(jié)點對應(yīng)的業(yè)務(wù)的執(zhí)行內(nèi)容;
43、若任意兩個目標節(jié)點對應(yīng)的業(yè)務(wù)的執(zhí)行內(nèi)容相同,則將任意兩個目標節(jié)點均與執(zhí)行內(nèi)容相同的同一個業(yè)務(wù)進行對應(yīng);
44、若任意兩個目標節(jié)點對應(yīng)的業(yè)務(wù)的執(zhí)行內(nèi)容不同,則將任意兩個目標節(jié)點分別與執(zhí)行內(nèi)容不同的兩個業(yè)務(wù)進行對應(yīng)。
45、可選地,運行各流程節(jié)點相對應(yīng)的節(jié)點業(yè)務(wù)之前,還包括:
46、為目標流程編排設(shè)置實時監(jiān)控流程;
47、運行各流程節(jié)點相對應(yīng)的節(jié)點業(yè)務(wù),包括:
48、當運行任意一個流程節(jié)點相對應(yīng)的節(jié)點業(yè)務(wù)時,運用實時監(jiān)控流程檢測流程節(jié)點的節(jié)點參數(shù)是否正確,以及,運用實時監(jiān)控流程檢測上游流程節(jié)點的結(jié)果參數(shù)和任意一個流程節(jié)點的輸入?yún)?shù)是否匹配,其中,上游流程節(jié)點為在任意一個流程節(jié)點之前運行節(jié)點業(yè)務(wù)的節(jié)點;
49、若節(jié)點參數(shù)錯誤,或者,若結(jié)果參數(shù)和輸入?yún)?shù)不匹配,則向外發(fā)出錯誤提示信息。
50、可選地,按照關(guān)聯(lián)關(guān)系遍歷各流程節(jié)點,并運行各流程節(jié)點相對應(yīng)的節(jié)點業(yè)務(wù),運行單元用于:
51、在各流程節(jié)點中查找初始流程節(jié)點,其中,初始流程節(jié)點是根據(jù)接收到的流程發(fā)起請求確定的,流程發(fā)起請求是客戶端針對目標流程編排發(fā)起的,初始流程節(jié)點為各流程節(jié)點中第一個運行節(jié)點業(yè)務(wù)的流程節(jié)點;
52、以初始流程節(jié)點為起點,按照關(guān)聯(lián)關(guān)系遍歷各流程節(jié)點,并在遍歷到任意一個流程節(jié)點時運行流程節(jié)點相對應(yīng)的節(jié)點業(yè)務(wù)。
53、第三方面,一種服務(wù)器,包括:
54、存儲器,用于存儲可執(zhí)行指令;
55、處理器,用于讀取并執(zhí)行存儲器中存儲的可執(zhí)行指令,以實現(xiàn)如第一方面任一項的方法。
56、第四方面,一種計算機可讀存儲介質(zhì),當所述存儲介質(zhì)中的指令由處理器執(zhí)行時,使得所述處理器能夠執(zhí)行上述第一方面任一項所述的方法。
57、本技術(shù)有益效果如下:
58、綜上所述,本技術(shù)實施例中,提供的一種流程編排引擎的實現(xiàn)方法、裝置及存儲介質(zhì),該方法應(yīng)用于服務(wù)器,包括:對接收到的流程創(chuàng)建請求進行解析得到待創(chuàng)建的目標流程編排的類型,其中,流程創(chuàng)建請求是客戶端針對流程編排軟件觸發(fā)的,流程編排軟件運行在客戶端上,基于預(yù)先設(shè)置的流程類型與目標節(jié)點之間的對應(yīng)關(guān)系,確定目標流程編排包括的各流程節(jié)點以及各流程節(jié)點之間的關(guān)聯(lián)關(guān)系,并基于各流程節(jié)點和關(guān)聯(lián)關(guān)系創(chuàng)建目標流程編排,基于預(yù)先設(shè)置的目標節(jié)點與業(yè)務(wù)之間的對應(yīng)關(guān)系,分別為目標流程編排中的各流程節(jié)點配置相對應(yīng)的節(jié)點業(yè)務(wù),按照關(guān)聯(lián)關(guān)系遍歷各流程節(jié)點,并運行各流程節(jié)點相對應(yīng)的節(jié)點業(yè)務(wù),上述流程編排引擎的實現(xiàn)過程節(jié)省了代碼開發(fā)成本,提高了系統(tǒng)的兼容性及擴展性。
59、本技術(shù)的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本技術(shù)而了解。本技術(shù)的目的和其他優(yōu)點可通過在所寫的說明書、權(quán)利要求書、以及附圖中所特別指出的結(jié)構(gòu)來實現(xiàn)和獲得。