[發(fā)明專利]一個高效的BPEL服務動態(tài)更新方法有效
| 申請?zhí)枺?/td> | 201210389324.X | 申請日: | 2012-10-15 |
| 公開(公告)號: | CN102902804A | 公開(公告)日: | 2013-01-30 |
| 發(fā)明(設計)人: | 馬曉星;曹春;呂建;馮仁君 | 申請(專利權)人: | 南京大學 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 南京知識律師事務所 32207 | 代理人: | 張?zhí)K沛 |
| 地址: | 210093 江*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一個 高效 bpel 服務 動態(tài) 更新 方法 | ||
1.一種高效的BPEL服務動態(tài)更新方法,其特征在于:
對BPEL流程構建高效模型;
利用BPEL流程運行時刻的數(shù)據(jù)信息,進行動態(tài)分析,實時更新流程可能被執(zhí)行節(jié)點的集合。
2.根據(jù)權利要求1所述的BPEL服務動態(tài)更新方法,其特征在于,所述對BPEL流程進行建模是指:
根據(jù)BPEL的特性對BPEL流程構建高效模型,將BPEL流程構建成有向圖,對于結(jié)構化的節(jié)點都設計對應的Begin和End節(jié)點,域節(jié)點中的所有信息都保存到Begin節(jié)點中,分支節(jié)點的設計則是轉(zhuǎn)化為二叉樹,從而保證對于每個分支都只有ture和false兩個分支,循環(huán)節(jié)點則將循環(huán)控制和循環(huán)部分分離,引入Loop節(jié)點控制循環(huán)次數(shù),并發(fā)節(jié)點保留原BPEL流程并發(fā)的含義,并且不能減少該節(jié)點本身語義。
3.根據(jù)權利要求2所述的BPEL服務動態(tài)更新方法,其特征在于,所述節(jié)點包括域、分支、循環(huán)、并發(fā)。
4.根據(jù)權利要求3所述的BPEL服務動態(tài)更新方法,其特征在于,所述動態(tài)分析,從流程執(zhí)行的當前節(jié)點開始分析,分析出未執(zhí)行路徑上的節(jié)點不會被流程執(zhí)行的節(jié)點,從而優(yōu)化了服務間的依賴;對于一般節(jié)點,其所有的孩子節(jié)點都可能被執(zhí)行;根據(jù)流程運行時刻的數(shù)據(jù),對以后可能被執(zhí)行的分支和循環(huán)節(jié)點進行預判。
5.根據(jù)權利要求1所述的BPEL服務動態(tài)更新方法,其特征在于,所述對BPEL流程構建高效模型具體包括:
1.1)利用有向圖刻畫BPEL流程;
1.2)一般節(jié)點和通用信息設計,丟棄基本節(jié)點大部分動作信息,保留類型和數(shù)據(jù)信息;
1.3)變量信息的設計,BPEL中變量復雜多變,變量類必須要能夠表示variable、espression、property、partnerlink和element,同時去除冗余信息;
1.4)伙伴信息的設計,簡化伙伴信息;
1.5)域節(jié)點的設計,域節(jié)點包括變量、觸發(fā)器,其在建模時包含一對Begin和End節(jié)點類,所有信息都保存在Begin節(jié)點類中;
1.6)分支節(jié)點的設計,分支是控制結(jié)構之一,其在建模時包含一對Begin和End節(jié)點類,同時將分支節(jié)點整體設計為一個二叉樹結(jié)構,保證每個分支只有true和false兩條分支;
1.7)循環(huán)節(jié)點的設計,循環(huán)是控制結(jié)構之一,該節(jié)點在建模時引入一個Loop節(jié)點類,由Loop節(jié)點類保存所有循環(huán)控制信息;
1.8)并發(fā)節(jié)點的設計,并發(fā)是控制結(jié)構之一,該節(jié)點在建模時包含一對Begin和End節(jié)點,其中Begin節(jié)點記錄所有l(wèi)ink的信息;
1.9)觸發(fā)器節(jié)點的設計,它包括事件觸發(fā)器和錯誤觸發(fā)器,將這些觸發(fā)器設計為一般節(jié)點簡化分析。
6.根據(jù)權利要求1所述的BPEL服務動態(tài)更新方法,其特征在于,所述動態(tài)分析具體包括:
2.1)從流程當前執(zhí)行節(jié)點開始分析,利用遞歸思想對一般節(jié)點和通用節(jié)點進行動態(tài)計算,因為對于一般節(jié)點,孩子節(jié)點都可能被父節(jié)點執(zhí)行;同時,標記已經(jīng)計算過的節(jié)點,避免重復就算;
2.2)利用遞歸思想對分支節(jié)點進行動態(tài)分析,對分支條件進行判定,以確定可能被執(zhí)行的分支路徑;
2.3)利用遞歸思想對循環(huán)節(jié)點進行動態(tài)分析,對分支條件進行判定,以確定可能被執(zhí)行的分支路徑;
2.4)標記涉及到寫操作的變量,它們的值在預判時認定為不可確定。
7.根據(jù)權利要求6所述的BPEL服務動態(tài)更新方法,其特征在于,所述分支節(jié)點進行動態(tài)分析具體包括:
2.2.1)在分支條件不可判定的情況下,所有分支將來都可能被執(zhí)行,并且真和假的兩條分支都會對分支節(jié)點之后的節(jié)點產(chǎn)生影響,所以需要分別對兩條分支進行分析計算,并將兩條分支的分析結(jié)果合并;
2.2.2)在分支條件可判定且判定結(jié)果為真時,只需要計算分支條件為真的分支;
2.2.3)在分支條件可判定且判定結(jié)果為假時,只需要計算分支條件為假的分支。
8.根據(jù)權利要求6所述的BPEL服務動態(tài)更新方法,其特征在于,所述循環(huán)節(jié)點進行動態(tài)分析具體包括:
2.3.1)在分支條件不可判定的情況下,所有分支都可能被執(zhí)行,所以需要分析所有分支,但是必須先計算條件為真的分支,再計算條件為假的分支,并且在計算假條件分支的時候必須繼承條件為真分支的變量標記信息;
2.3.2)在分支條件可判定且判定結(jié)果為真時,所有分支都可能被執(zhí)行,所以需要分析所有分支,但是必須先計算條件為真的分支,再計算條件為假的分支,并且在計算假條件分支的時候必須繼承條件為真分支的變量標記信息;
2.3.3)在分支條件可判定且判定結(jié)果為假時,只需要分析分支條件為假的分支。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京大學,未經(jīng)南京大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210389324.X/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 一種將XPDL格式的工作流模型轉(zhuǎn)換成BPEL格式的方法
- 基于有向圖的WS-BPEL控制環(huán)路檢測方法
- 基于BPEL數(shù)據(jù)交換的過程處理方法及處理系統(tǒng)
- 面向服務環(huán)境中基于模板實現(xiàn)BPEL子流程復用的方法及系統(tǒng)
- 實現(xiàn)帶有人工任務的自動流程的方法、裝置及系統(tǒng)
- 基于Pi演算的分布式流程驗證系統(tǒng)及方法
- 一種業(yè)務處理執(zhí)行語言流程部署方法
- 一種流程調(diào)用方法、系統(tǒng)及應用服務器
- 基于程序依賴圖的BPEL過程一致性度量方法
- 一種基于BPEL組合服務的修改影響分析方法





