国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種流程實(shí)例數(shù)據(jù)處理方法和裝置的制作方法

      文檔序號(hào):6443591閱讀:344來源:國知局
      專利名稱:一種流程實(shí)例數(shù)據(jù)處理方法和裝置的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,特別是涉及一種流程實(shí)例數(shù)據(jù)處理方法和裝置。
      技術(shù)背景
      隨著企業(yè)信息化的快速發(fā)展,BPM(Business Process Management,業(yè)務(wù)流程管理)在信息化過程中起到了重要的作用。BPM是一種對(duì)企業(yè)各種業(yè)務(wù)環(huán)節(jié)進(jìn)行整合以達(dá)成全面管理的方式。由于BPM產(chǎn)品的重要性,企業(yè)對(duì)BPM產(chǎn)品的依賴度越來越高,與此同時(shí)企業(yè)也對(duì)BPM產(chǎn)品提出了更高的要求,其中最突出的就是BPM產(chǎn)品的性能問題。
      BPM產(chǎn)品的性能瓶頸主要表現(xiàn)在對(duì)流程實(shí)例數(shù)據(jù)的頻繁訪問方面。在現(xiàn)有技術(shù)中, BPM產(chǎn)品通常采用工作流來執(zhí)行業(yè)務(wù)流程的自動(dòng)流轉(zhuǎn)或自動(dòng)執(zhí)行。業(yè)務(wù)流程管理一般包括流程定義、流程模板生成、流程執(zhí)行等過程。其中,流程執(zhí)行主要是根據(jù)流程模板的定義生成流程實(shí)例。而現(xiàn)有技術(shù)中,用戶的一次工作項(xiàng)提交操作,需要對(duì)流程實(shí)例的多個(gè)對(duì)象做多次更新操作,而流程實(shí)例數(shù)據(jù)通常同步保存在數(shù)據(jù)庫中,造成以下兩個(gè)問題
      一是由于流程實(shí)例數(shù)據(jù)經(jīng)常變化,將其同步保存在數(shù)據(jù)庫中會(huì)給系統(tǒng)帶來很大的系統(tǒng)開銷,從而使系統(tǒng)性能降低;
      二是由于流程實(shí)例數(shù)據(jù)大量的插入、更新操作,直接訪問數(shù)據(jù)庫中的流程實(shí)例數(shù)據(jù)會(huì)給數(shù)據(jù)庫系統(tǒng)造成巨大的壓力。而數(shù)據(jù)庫一般存放在磁盤中,過多的頻繁訪問則會(huì)導(dǎo)致系統(tǒng)響應(yīng)時(shí)間變長、性能降低等問題。發(fā)明內(nèi)容
      通過業(yè)務(wù)分析,發(fā)現(xiàn)流程實(shí)例數(shù)據(jù)同步保存是不必要的,只要在需要時(shí)同步到數(shù)據(jù)庫中即可;另外,由于數(shù)據(jù)庫中的數(shù)據(jù)存在磁盤上,訪問其數(shù)據(jù)不如直接訪問緩存中的數(shù)據(jù)更為直接、迅速,且能解決直接訪問數(shù)據(jù)庫效率低的問題。
      為解決上述技術(shù)問題,本發(fā)明實(shí)施例提供了一種流程實(shí)例數(shù)據(jù)處理方法和裝置, 通過將流程實(shí)例數(shù)據(jù)保存在緩存中并異步持久化至數(shù)據(jù)庫中,提高了工作流引擎性能,降低了系統(tǒng)響應(yīng)時(shí)間。
      一方面,本發(fā)明實(shí)施例提供了一種流程實(shí)例數(shù)據(jù)處理方法,所述方法包括
      接收工作流接口調(diào)用操作,根據(jù)所述接口調(diào)用操作生成流程實(shí)例數(shù)據(jù);
      將所述流程實(shí)例數(shù)據(jù)保存在緩存中,當(dāng)用戶執(zhí)行工作流引擎操作時(shí),所述工作流引擎直接與緩存數(shù)據(jù)進(jìn)行交互;
      設(shè)置監(jiān)測(cè)任務(wù),當(dāng)所述監(jiān)測(cè)任務(wù)確定滿足預(yù)設(shè)的第一觸發(fā)條件時(shí),將緩存中的流程實(shí)例數(shù)據(jù)同步到數(shù)據(jù)庫中進(jìn)行保存。
      優(yōu)選的,當(dāng)出現(xiàn)以下任一情況時(shí),確定滿足預(yù)設(shè)的第一觸發(fā)條件
      當(dāng)預(yù)設(shè)的同步時(shí)刻到達(dá)時(shí);
      當(dāng)節(jié)點(diǎn)實(shí)例結(jié)束時(shí);
      當(dāng)流程實(shí)例結(jié)束時(shí)。
      優(yōu)選的,在接收工作流接口調(diào)用操作后,所述方法還包括
      根據(jù)所述接口調(diào)用操作生成預(yù)設(shè)格式的指令信息;
      保存所述指令信息以及所述指令信息與接口調(diào)用操作的對(duì)應(yīng)關(guān)系。
      優(yōu)選的,所述方法還包括
      當(dāng)發(fā)生系統(tǒng)重啟時(shí)或發(fā)生系統(tǒng)故障時(shí),獲取所述指令信息;
      根據(jù)所述指令信息與接口調(diào)用操作的對(duì)應(yīng)關(guān)系,生成與所述指令信息對(duì)應(yīng)的接口調(diào)用操作;
      根據(jù)所述接口調(diào)用操作進(jìn)入生成流程實(shí)例數(shù)據(jù)的步驟。
      優(yōu)選的,在獲取所述指令信息之前,所述方法還包括
      進(jìn)一步判斷是否存在未同步到數(shù)據(jù)庫中的流程實(shí)例數(shù)據(jù),如果存在,獲取所述指令fe息。
      優(yōu)選的,所述方法還包括
      當(dāng)與所述接口調(diào)用操作對(duì)應(yīng)的流程實(shí)例數(shù)據(jù)從緩存中同步到數(shù)據(jù)庫時(shí),刪除與所述接口調(diào)用操作對(duì)應(yīng)的指令信息。
      另一方面,本發(fā)明實(shí)施例還公開了一種流程實(shí)例數(shù)據(jù)處理裝置,所述裝置包括
      流程引擎模塊,用于接收工作流接口調(diào)用操作,根據(jù)所述接口調(diào)用操作生成流程實(shí)例數(shù)據(jù);當(dāng)用戶執(zhí)行工作流引擎操作時(shí),與緩存模塊進(jìn)行數(shù)據(jù)交互;
      緩存模塊,用于將所述流程實(shí)例數(shù)據(jù)保存在緩存中;
      同步模塊,用于設(shè)置監(jiān)測(cè)任務(wù),當(dāng)所述監(jiān)測(cè)任務(wù)確定滿足預(yù)設(shè)的第一觸發(fā)條件時(shí), 將緩存中的流程實(shí)例數(shù)據(jù)同步到數(shù)據(jù)庫中進(jìn)行保存。
      優(yōu)選的,所述同步模塊在出現(xiàn)以下任一情況時(shí)確定滿足預(yù)設(shè)的第一觸發(fā)條件
      當(dāng)預(yù)設(shè)的同步時(shí)刻到達(dá)時(shí);
      當(dāng)節(jié)點(diǎn)實(shí)例結(jié)束時(shí);
      當(dāng)流程實(shí)例結(jié)束時(shí)。
      優(yōu)選的,所述裝置還包括
      轉(zhuǎn)換模塊,用于根據(jù)所述接口調(diào)用操作生成預(yù)設(shè)格式的指令信息;
      指令數(shù)據(jù)庫,用于保存所述指令信息以及所述指令信息與接口調(diào)用操作的對(duì)應(yīng)關(guān)系。
      優(yōu)選的,所述轉(zhuǎn)換模塊還用于當(dāng)發(fā)生系統(tǒng)重啟時(shí)或發(fā)生系統(tǒng)故障時(shí),從所述指令數(shù)據(jù)庫中獲取所述指令信息;根據(jù)所述指令信息與接口調(diào)用操作的對(duì)應(yīng)關(guān)系,生成與所述指令信息對(duì)應(yīng)的接口調(diào)用操作,進(jìn)入流程引擎模塊。
      優(yōu)選的,所述裝置還包括
      判斷模塊,用于進(jìn)一步判斷是否存在未同步到數(shù)據(jù)庫中的流程實(shí)例數(shù)據(jù),如果存在,進(jìn)入轉(zhuǎn)換模塊;
      第一刪除單元,用于當(dāng)與所述接口調(diào)用操作對(duì)應(yīng)的流程實(shí)例數(shù)據(jù)從緩存中同步到數(shù)據(jù)庫時(shí),刪除與所述接口調(diào)用操作對(duì)應(yīng)的指令信息。
      本發(fā)明實(shí)施例能夠達(dá)到的有益效果為本發(fā)明實(shí)施例提供的方法,通過接收工作接口調(diào)用操作,根據(jù)接口調(diào)用操作生成相應(yīng)的流程實(shí)例數(shù)據(jù),并將流程實(shí)例數(shù)據(jù)保存在緩存中,當(dāng)用戶執(zhí)行工作流引擎操作時(shí),所述工作流引擎直接與緩存數(shù)據(jù)進(jìn)行交互。設(shè)置監(jiān)測(cè)任務(wù),當(dāng)監(jiān)測(cè)任務(wù)確定滿足預(yù)設(shè)的第一觸發(fā)條件時(shí),將緩存中的流程實(shí)例數(shù)據(jù)同步到數(shù)據(jù)庫中進(jìn)行保存。由于將流程實(shí)例數(shù)據(jù)保存在緩存中,當(dāng)用戶執(zhí)行工作流引擎操作時(shí),工作流引擎直接與緩存數(shù)據(jù)進(jìn)行交互,大大提高了工作流引擎的性能,降低了系統(tǒng)響應(yīng)時(shí)間。另外,設(shè)置監(jiān)測(cè)任務(wù),當(dāng)滿足預(yù)設(shè)的第一觸發(fā)條件時(shí),將緩存中的流程實(shí)例數(shù)據(jù)同步到數(shù)據(jù)庫中進(jìn)行保存,以保持緩存與數(shù)據(jù)庫之間的數(shù)據(jù)同步。
      再一方面,本發(fā)明提供的實(shí)施例在接收工作流接口調(diào)用操作后,將接口調(diào)用操作轉(zhuǎn)換成指令信息,并保存所述指令信息與接口調(diào)用操作的對(duì)應(yīng)關(guān)系,當(dāng)出現(xiàn)意外重啟或當(dāng)機(jī)時(shí),即可載入所述指令信息以生成相應(yīng)的接口調(diào)用操作,并執(zhí)行接口調(diào)用操作,從而達(dá)到重新恢復(fù)流程實(shí)例緩存數(shù)據(jù)的結(jié)果,有效地解決了系統(tǒng)意外當(dāng)機(jī)后帶來的數(shù)據(jù)丟失的問題。


      為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明中記載的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下, 還可以根據(jù)這些附圖獲得其他的附圖。
      圖1為本發(fā)明提供的流程實(shí)例數(shù)據(jù)處理方法第一實(shí)施例流程圖2為本發(fā)明提供的流程實(shí)例數(shù)據(jù)處理方法第二實(shí)施例流程圖3為本發(fā)明提供的異步持久化方法示意圖4為本發(fā)明提供的流程實(shí)例數(shù)據(jù)處理裝置第一實(shí)施例示意圖5為本發(fā)明提供的流程實(shí)例數(shù)據(jù)處理裝置第二實(shí)施例示意圖。
      具體實(shí)施方式
      本發(fā)明實(shí)施例提供了一種流程實(shí)例數(shù)據(jù)處理方法和裝置,通過將流程實(shí)例數(shù)據(jù)保存在緩存中并異步持久化至數(shù)據(jù)庫中,提高了工作流引擎性能,降低了系統(tǒng)響應(yīng)時(shí)間。
      為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明中的技術(shù)方案,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本發(fā)明保護(hù)的范圍。
      參見圖1,為本發(fā)明提供的流程實(shí)例數(shù)據(jù)處理方法第一實(shí)施例流程圖,所述方法包括
      S101,接收工作流接口調(diào)用操作,根據(jù)所述接口調(diào)用操作生成流程實(shí)例數(shù)據(jù)。
      一般而言,流程的執(zhí)行過程主要是根據(jù)流程模板的定義生成流程實(shí)例。在本發(fā)明實(shí)施例中,用戶通過用戶接口調(diào)用工作流接口,這時(shí),接收用戶的工作流接口調(diào)用操作,解析預(yù)先設(shè)置的與所述工作流接口調(diào)用對(duì)應(yīng)的流程模板,根據(jù)流程模板生成流程實(shí)例數(shù)據(jù)。
      S102,將所述流程實(shí)例數(shù)據(jù)保存在緩存中,當(dāng)用戶執(zhí)行工作流引擎操作時(shí),所述工作流引擎直接與緩存數(shù)據(jù)進(jìn)行交互。
      現(xiàn)有技術(shù)中,流程實(shí)例數(shù)據(jù)存放在數(shù)據(jù)庫中,數(shù)據(jù)庫通常存放在磁盤中。由于流程實(shí)例數(shù)據(jù)是一類動(dòng)態(tài)數(shù)據(jù),需要進(jìn)行大量的、頻繁的讀寫操作,直接通過磁盤訪問數(shù)據(jù)庫中的流程實(shí)例數(shù)據(jù)會(huì)給數(shù)據(jù)庫系統(tǒng)造成巨大的壓力。另一方面,通過磁盤訪問數(shù)據(jù)庫中的數(shù)據(jù),訪問速度也較低,導(dǎo)致系統(tǒng)響應(yīng)時(shí)間過長,性能降低。而在本發(fā)明實(shí)施例中,流程實(shí)例數(shù)據(jù)是存放在緩存中的,當(dāng)用戶執(zhí)行工作流引擎操作時(shí),工作流引擎模塊直接與緩存中的數(shù)據(jù)進(jìn)行交互。一般的,工作流引擎操作可以為執(zhí)行具體的流程創(chuàng)建、工作項(xiàng)提交以及流程駁回等邏輯操作。在本發(fā)明實(shí)施例中,由于數(shù)據(jù)存放在緩存中,因此訪問更加直接、迅速,降低了系統(tǒng)響應(yīng)時(shí)間,且能解決直接訪問數(shù)據(jù)庫效率低的問題。
      S103,設(shè)置監(jiān)測(cè)任務(wù),當(dāng)所述監(jiān)測(cè)任務(wù)確定滿足預(yù)設(shè)的第一觸發(fā)條件時(shí),將緩存中的流程實(shí)例數(shù)據(jù)同步到數(shù)據(jù)庫中進(jìn)行保存。
      具體的,預(yù)設(shè)的第一觸發(fā)條件可以包括以下幾種情況
      (1)當(dāng)預(yù)設(shè)的同步時(shí)刻到達(dá)時(shí)
      設(shè)置定時(shí)監(jiān)測(cè)任務(wù),當(dāng)?shù)竭_(dá)預(yù)設(shè)的同步時(shí)刻時(shí),將緩存中的流程實(shí)例數(shù)據(jù)同步到數(shù)據(jù)庫中進(jìn)行保存。進(jìn)行同步的時(shí)刻可以預(yù)先設(shè)定,如每天M:oo點(diǎn)進(jìn)行同步處理。由于這種同步并不是實(shí)時(shí)進(jìn)行的,因此,又稱為異步持久化。
      (2)當(dāng)節(jié)點(diǎn)實(shí)例結(jié)束時(shí)
      前面提到,流程的執(zhí)行過程主要是根據(jù)流程模板的定義生成流程實(shí)例。在一個(gè)工作流執(zhí)行過程中,一般會(huì)涉及多個(gè)節(jié)點(diǎn)。在流程的執(zhí)行過程中,根據(jù)流程目標(biāo)中定義的節(jié)點(diǎn)、上下文環(huán)境等創(chuàng)建當(dāng)前的節(jié)點(diǎn)實(shí)例,當(dāng)該節(jié)點(diǎn)實(shí)例運(yùn)行結(jié)束后,再創(chuàng)建下一個(gè)節(jié)點(diǎn)實(shí)例。舉例進(jìn)行說明,例如對(duì)一個(gè)業(yè)務(wù)審批的工作流來說,涉及提交業(yè)務(wù)審批、業(yè)務(wù)部門領(lǐng)導(dǎo)簽字、總經(jīng)理簽字等三個(gè)環(huán)節(jié),每一個(gè)環(huán)節(jié)可以視為一個(gè)流程節(jié)點(diǎn)。當(dāng)完成一個(gè)具體環(huán)節(jié)時(shí),相對(duì)應(yīng)的流程節(jié)點(diǎn)實(shí)例結(jié)束。因此,可以設(shè)置監(jiān)測(cè)任務(wù),用于監(jiān)測(cè)當(dāng)前工作流的節(jié)點(diǎn)實(shí)例,當(dāng)判斷當(dāng)前節(jié)點(diǎn)的實(shí)例運(yùn)行結(jié)束時(shí),將緩存中的流程實(shí)例數(shù)據(jù)同步到數(shù)據(jù)庫中保存。
      (3)當(dāng)流程實(shí)例結(jié)束時(shí)
      具體的,也可以根據(jù)具體的業(yè)務(wù)場(chǎng)景,選擇當(dāng)流程實(shí)例結(jié)束時(shí),進(jìn)行異步持久化處理,即將緩存中的數(shù)據(jù)同步到數(shù)據(jù)庫中。
      這里,儲(chǔ)存實(shí)例數(shù)據(jù)的數(shù)據(jù)庫可以是關(guān)系數(shù)據(jù)庫。具體實(shí)現(xiàn)時(shí),從緩存中遍歷路程實(shí)例數(shù)據(jù),獲取需要進(jìn)行同步的數(shù)據(jù),將緩存中的實(shí)例數(shù)據(jù)轉(zhuǎn)換成SQL語句發(fā)給關(guān)系型數(shù)據(jù)庫進(jìn)行保存。將已同步到數(shù)據(jù)庫到流程實(shí)例數(shù)據(jù)從緩存中刪除,以節(jié)省緩存空間,提高數(shù)據(jù)訪問效率。
      在本發(fā)明提供的第一實(shí)施例中,由于將流程實(shí)例數(shù)據(jù)保存在緩存中,在當(dāng)用戶執(zhí)行工作流引擎操作時(shí),工作流引擎直接與緩存數(shù)據(jù)進(jìn)行交互,大大提高了工作流引擎的性能,降低了系統(tǒng)響應(yīng)時(shí)間。另一方面,僅在需要的時(shí)候,將流程實(shí)例數(shù)據(jù)同步到數(shù)據(jù)庫中,以保持緩存與數(shù)據(jù)庫之間的數(shù)據(jù)同步,降低了系統(tǒng)開銷。
      參見圖2,為本發(fā)明實(shí)施例提供的流程實(shí)例數(shù)據(jù)處理方法第二實(shí)施例流程圖。
      S201,接收工作流接口調(diào)用操作。
      用戶的流程操作最普遍的為發(fā)起新的流程以及提交工作項(xiàng),當(dāng)用戶執(zhí)行引擎操作后,工作流引擎一方面將用戶的接口調(diào)用操作轉(zhuǎn)換為指令保存,一方面生成流程實(shí)例數(shù)據(jù), 將其保存在緩存中,并與緩存中的數(shù)據(jù)交互,快速將結(jié)果返回給用戶。
      S202,執(zhí)行引擎操作,生成流程實(shí)例數(shù)據(jù)。
      S203,將所述流程實(shí)例數(shù)據(jù)保存在緩存中,當(dāng)用戶執(zhí)行工作流引擎操作時(shí),所述工作流引擎直接與緩存數(shù)據(jù)進(jìn)行交互。
      S204,根據(jù)接口調(diào)用操作生成預(yù)設(shè)格式的指令信息。
      在本發(fā)明實(shí)施例中,當(dāng)用戶調(diào)用工作流接口時(shí),將接口調(diào)用操作轉(zhuǎn)換成特定命令格式的指令信息并進(jìn)行保存。
      S205,保存指令信息以及指令信息與接口調(diào)用操作的對(duì)應(yīng)關(guān)系。
      具體的,可以設(shè)置一個(gè)指令數(shù)據(jù)庫保存指令信息,指令數(shù)據(jù)庫可以是關(guān)系型數(shù)據(jù)庫或其他類型的數(shù)據(jù)庫。也可以通過文件或其他存儲(chǔ)方式保存指令信息。為了能夠?qū)⒅噶钚畔⒅匦陆馕鰹橛脩舻慕涌谡{(diào)用操作,指令信息一般包括以下內(nèi)容
      (1)操作類型包括發(fā)起流程、任務(wù)提交、流程駁回等類型。
      (2)操作用戶當(dāng)前流程的發(fā)起者或者任務(wù)提交者。具體可以保存用戶的標(biāo)識(shí)。
      (3)操作時(shí)間發(fā)生當(dāng)前操作的時(shí)間。
      (4)操作對(duì)象具體可以保存流程模板ID、任務(wù)ID或者流程實(shí)例ID等。
      (5)對(duì)象類型具體可以包括流程模板、流程實(shí)例、節(jié)點(diǎn)實(shí)例、工作項(xiàng)等。
      (6)指令狀態(tài)用于表明當(dāng)前指令的處理狀態(tài),如待處理、正在處理、處理異常。具體的,可以用標(biāo)記表明處理狀態(tài),例如,用“0”表示待處理,用“1”表示處理完成,用“2”表示處理異常等。
      具體可以如下表所示
      權(quán)利要求
      1.一種流程實(shí)例數(shù)據(jù)處理方法,其特征在于,所述方法包括 接收工作流接口調(diào)用操作,根據(jù)所述接口調(diào)用操作生成流程實(shí)例數(shù)據(jù);將所述流程實(shí)例數(shù)據(jù)保存在緩存中,當(dāng)用戶執(zhí)行工作流引擎操作時(shí),所述工作流引擎直接與緩存數(shù)據(jù)進(jìn)行交互;設(shè)置監(jiān)測(cè)任務(wù),當(dāng)所述監(jiān)測(cè)任務(wù)確定滿足預(yù)設(shè)的第一觸發(fā)條件時(shí),將緩存中的流程實(shí)例數(shù)據(jù)同步到數(shù)據(jù)庫中進(jìn)行保存。
      2.根據(jù)權(quán)利要求1所述的方法,其特征在于,當(dāng)出現(xiàn)以下任一情況時(shí),確定滿足預(yù)設(shè)的第一觸發(fā)條件當(dāng)預(yù)設(shè)的同步時(shí)刻到達(dá)時(shí); 當(dāng)節(jié)點(diǎn)實(shí)例結(jié)束時(shí); 當(dāng)流程實(shí)例結(jié)束時(shí)。
      3.根據(jù)權(quán)利要求1所述的方法,其特征在于,在接收工作流接口調(diào)用操作后,所述方法還包括根據(jù)所述接口調(diào)用操作生成預(yù)設(shè)格式的指令信息;保存所述指令信息以及所述指令信息與接口調(diào)用操作的對(duì)應(yīng)關(guān)系。
      4.根據(jù)權(quán)利要求1或3所述的方法,其特征在于,所述方法還包括 當(dāng)發(fā)生系統(tǒng)重啟時(shí)或發(fā)生系統(tǒng)故障時(shí),獲取所述指令信息;根據(jù)所述指令信息與接口調(diào)用操作的對(duì)應(yīng)關(guān)系,生成與所述指令信息對(duì)應(yīng)的接口調(diào)用操作;根據(jù)所述接口調(diào)用操作進(jìn)入生成流程實(shí)例數(shù)據(jù)的步驟。
      5.根據(jù)權(quán)利要求4所述的方法,其特征在于,在獲取所述指令信息之前,所述方法還包括進(jìn)一步判斷是否存在未同步到數(shù)據(jù)庫中的流程實(shí)例數(shù)據(jù),如果存在,獲取所述指令信息。
      6.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述方法還包括當(dāng)與所述接口調(diào)用操作對(duì)應(yīng)的流程實(shí)例數(shù)據(jù)從緩存中同步到數(shù)據(jù)庫時(shí),刪除與所述接口調(diào)用操作對(duì)應(yīng)的指令信息。
      7.—種流程實(shí)例數(shù)據(jù)處理裝置,其特征在于,所述裝置包括流程引擎模塊,用于接收工作流接口調(diào)用操作,根據(jù)所述接口調(diào)用操作生成流程實(shí)例數(shù)據(jù);當(dāng)用戶執(zhí)行工作流引擎操作時(shí),與緩存模塊進(jìn)行數(shù)據(jù)交互; 緩存模塊,用于將所述流程實(shí)例數(shù)據(jù)保存在緩存中;同步模塊,用于設(shè)置監(jiān)測(cè)任務(wù),當(dāng)所述監(jiān)測(cè)任務(wù)確定滿足預(yù)設(shè)的第一觸發(fā)條件時(shí),將緩存中的流程實(shí)例數(shù)據(jù)同步到數(shù)據(jù)庫中進(jìn)行保存。
      8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述同步模塊在出現(xiàn)以下任一情況時(shí)確定滿足預(yù)設(shè)的第一觸發(fā)條件當(dāng)預(yù)設(shè)的同步時(shí)刻到達(dá)時(shí); 當(dāng)節(jié)點(diǎn)實(shí)例結(jié)束時(shí); 當(dāng)流程實(shí)例結(jié)束時(shí)。
      9.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述裝置還包括轉(zhuǎn)換模塊,用于根據(jù)所述接口調(diào)用操作生成預(yù)設(shè)格式的指令信息;指令數(shù)據(jù)庫,用于保存所述指令信息以及所述指令信息與接口調(diào)用操作的對(duì)應(yīng)關(guān)系。
      10.根據(jù)權(quán)利要求7或9所述的裝置,其特征在于,所述轉(zhuǎn)換模塊還用于當(dāng)發(fā)生系統(tǒng)重啟時(shí)或發(fā)生系統(tǒng)故障時(shí),從所述指令數(shù)據(jù)庫中獲取所述指令信息,根據(jù)所述指令信息與接口調(diào)用操作的對(duì)應(yīng)關(guān)系,生成與所述指令信息對(duì)應(yīng)的接口調(diào)用操作,進(jìn)入流程引擎模塊。
      11.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述裝置還包括判斷模塊,用于進(jìn)一步判斷是否存在未同步到數(shù)據(jù)庫中的流程實(shí)例數(shù)據(jù),如果存在,進(jìn)入轉(zhuǎn)換模塊;第一刪除單元,用于當(dāng)與所述接口調(diào)用操作對(duì)應(yīng)的流程實(shí)例數(shù)據(jù)從緩存中同步到數(shù)據(jù)庫時(shí),刪除與所述接口調(diào)用操作對(duì)應(yīng)的指令信息。
      全文摘要
      本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,特別是一種流程實(shí)例數(shù)據(jù)處理方法和裝置,所述方法包括接收工作流接口調(diào)用操作,根據(jù)所述接口調(diào)用操作生成流程實(shí)例數(shù)據(jù);將所述流程實(shí)例數(shù)據(jù)保存在緩存中,當(dāng)用戶執(zhí)行工作流引擎操作時(shí),所述工作流引擎直接與緩存數(shù)據(jù)進(jìn)行交互;設(shè)置監(jiān)測(cè)任務(wù),當(dāng)所述監(jiān)測(cè)任務(wù)確定滿足預(yù)設(shè)的第一觸發(fā)條件時(shí),將緩存中的流程實(shí)例數(shù)據(jù)同步到數(shù)據(jù)庫中進(jìn)行保存。由于將流程實(shí)例數(shù)據(jù)保存在緩存中,當(dāng)用戶執(zhí)行工作流引擎操作時(shí),工作流引擎直接與緩存數(shù)據(jù)進(jìn)行交互,大大提高了工作流引擎的性能,降低了系統(tǒng)響應(yīng)時(shí)間。另外,設(shè)置監(jiān)測(cè)任務(wù),滿足預(yù)設(shè)條件時(shí)將緩存中的流程實(shí)例數(shù)據(jù)同步到數(shù)據(jù)庫中保存,以保持緩存與數(shù)據(jù)庫之間的數(shù)據(jù)同步。
      文檔編號(hào)G06Q10/06GK102521712SQ201110445830
      公開日2012年6月27日 申請(qǐng)日期2011年12月27日 優(yōu)先權(quán)日2011年12月27日
      發(fā)明者劉作坤, 紀(jì)勇, 趙振國 申請(qǐng)人:東軟集團(tuán)股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1