两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

任務(wù)處理方法及裝置制造方法

文檔序號:6637517閱讀:185來源:國知局
任務(wù)處理方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種任務(wù)處理方法及裝置,屬于計算機【技術(shù)領(lǐng)域】。所述方法包括:獲取重新啟動前預設(shè)時間段內(nèi)未成功執(zhí)行的第一流程實例;修復第一流程實例中的所有未成功處理的第一任務(wù),并修復第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系;根據(jù)每個第一任務(wù)之間修復后的先后依賴關(guān)系確定第一流程實例中已修復且需要處理的第一任務(wù),并根據(jù)已修復且需要處理的第一任務(wù)生成第一任務(wù)處理指令;將第一任務(wù)處理指令發(fā)送至第二服務(wù)器,由第二服務(wù)器接收第一任務(wù)處理指令,并根據(jù)接收到的第一任務(wù)處理指令處理任務(wù)。本發(fā)明通過修復重啟前未成功執(zhí)行的第一流程實例,從而在重啟后能重新處理第一流程實例中的任務(wù)。因此,處理任務(wù)的可用性較高,穩(wěn)定性較好。
【專利說明】任務(wù)處理方法及裝置

【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及計算機【技術(shù)領(lǐng)域】,特別涉及一種任務(wù)處理方法及裝置。

【背景技術(shù)】
[0002] 隨著現(xiàn)在計算機技術(shù)的快速發(fā)展,越來越多的服務(wù)商通過服務(wù)器來處理不同業(yè)務(wù) 中的任務(wù)。其中,服務(wù)器對任務(wù)進行處理的方法影響到相關(guān)系統(tǒng)可用性。因此,如何對任務(wù) 進行處理是提高系統(tǒng)可用性的關(guān)鍵。
[0003] 相關(guān)技術(shù)中提供了一種任務(wù)處理方法,在該方法中,預先確定需要執(zhí)行的流程實 例,根據(jù)需要執(zhí)行的流程實例確定當前需要處理的任務(wù),并對任務(wù)進行處理。其中,執(zhí)行上 述過程的服務(wù)器中可能會因故障而重新啟動,服務(wù)器在執(zhí)行流程實例或處理流程實例中的 任務(wù)時也可能會失敗。當流程實例執(zhí)行失敗時,則立刻重新執(zhí)行流程實例。當流程實例中 的任務(wù)處理失敗時,則立刻重新處理任務(wù)。
[0004] 在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)上述方法至少存在以下問題:
[0005] 由于服務(wù)器可能會因故障而重新啟動,若重新啟動前存在未成功處理的任務(wù)對應(yīng) 的流程實例,則服務(wù)器在重新啟動后,之前未執(zhí)行成功的流程實例或未處理成功的任務(wù)均 會丟失。因此,任務(wù)處理時的可用性較低,穩(wěn)定性較差。


【發(fā)明內(nèi)容】

[0006] 為了解決現(xiàn)有技術(shù)的問題,本發(fā)明實施例提供了一種任務(wù)處理方法及裝置。所述 技術(shù)方案如下:
[0007] 第一方面,提供了一種任務(wù)處理方法,所述方法包括:
[0008] 獲取重新啟動前預設(shè)時間段內(nèi)未成功執(zhí)行的第一流程實例,所述第一流程實例為 重新啟動前預設(shè)時間段內(nèi)包含未成功處理的任務(wù)對應(yīng)的流程實例,所述第一流程實例中包 括至少一個未成功處理的第一任務(wù);
[0009] 修復所述第一流程實例中的所有未成功處理的第一任務(wù),并修復所述第一流程實 例中每個第一任務(wù)之間的先后依賴關(guān)系;
[0010] 根據(jù)每個第一任務(wù)之間修復后的先后依賴關(guān)系確定所述第一流程實例中已修復 且需要處理的第一任務(wù),并根據(jù)已修復且需要處理的第一任務(wù)生成第一任務(wù)處理指令,所 述第一任務(wù)處理指令中至少包括已修復且需要處理的第一任務(wù);
[0011] 將所述第一任務(wù)處理指令發(fā)送至第二服務(wù)器,由所述第二服務(wù)器接收第一任務(wù)處 理指令,并根據(jù)接收到的第一任務(wù)處理指令處理任務(wù)。
[0012] 結(jié)合第一方面,在第一方面的第一種可能的實現(xiàn)方式中,所述根據(jù)每個第一任務(wù) 之間修復后的先后依賴關(guān)系確定所述第一流程實例中已修復且需要處理的第一任務(wù),包 括:
[0013] 根據(jù)每個第一任務(wù)之間修復后的先后依賴關(guān)系確定已修復的第一任務(wù)中無前序 任務(wù)的第一任務(wù),并將無前序任務(wù)的第一任務(wù)作為已修復且需要處理的第一任務(wù)。
[0014] 結(jié)合第一方面,在第一方面的第二種可能的實現(xiàn)方式中,所述修復所述第一流程 實例中的所有第一任務(wù),并修復所述第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系之 前,還包括:
[0015] 記錄重新啟動前所述第一流程實例中的所有第一任務(wù)的狀態(tài)信息,并記錄重新啟 動前所述第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系的相關(guān)信息;
[0016] 所述修復所述第一流程實例中的所有第一任務(wù),并修復所述第一流程實例中每個 第一任務(wù)之間的先后依賴關(guān)系,包括 :
[0017] 根據(jù)所述第一流程實例中的所有第一任務(wù)的狀態(tài)信息修復所述第一流程實例中 的所有第一任務(wù),并根據(jù)所述第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系的相關(guān)信 息修復所述第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系。
[0018] 結(jié)合第一方面,在第一方面的第三種可能的實現(xiàn)方式中,所述方法還包括:
[0019] 獲取當前任務(wù)流程,并根據(jù)當前任務(wù)流程生成第二流程實例,所述第二流程實例 中包括至少一個第二任務(wù),每個第二任務(wù)之間存在先后依賴關(guān)系;
[0020] 根據(jù)每個第二任務(wù)之間的先后依賴關(guān)系確定所述第二流程實例中需要處理的第 二任務(wù),并根據(jù)需要處理的第二任務(wù)生成第二任務(wù)處理指令,所述第二任務(wù)處理指令中至 少包括需要處理的第二任務(wù);
[0021] 將所述第二任務(wù)處理指令發(fā)送至第二服務(wù)器,由所述第二服務(wù)器接收第二任務(wù)處 理指令,并根據(jù)接收到的第二任務(wù)處理指令處理任務(wù)。
[0022] 第二方面,提供了一種任務(wù)處理方法,所述方法包括:
[0023] 接收第一服務(wù)器發(fā)送的第一任務(wù)處理指令,所述第一任務(wù)處理指令中至少包括已 修復且需要處理的第一任務(wù),所述已修復且需要處理的第一任務(wù)為所述第一服務(wù)器獲取重 新啟動前預設(shè)時間段內(nèi)未成功執(zhí)行的第一流程實例中的任務(wù);
[0024] 根據(jù)接收到的第一任務(wù)處理指令處理任務(wù)。
[0025] 結(jié)合第二方面,在第二方面的第一種可能的實現(xiàn)方式中,所述方法還包括:
[0026] 接收第一服務(wù)器發(fā)送的第二任務(wù)處理指令,所述第二任務(wù)處理指令中至少包括需 要處理的第二任務(wù),所述需要處理的第二任務(wù)為所述第一服務(wù)器根據(jù)當前任務(wù)流程生成的 第二流程實例中的任務(wù);
[0027] 根據(jù)接收到的第二任務(wù)處理指令處理任務(wù)。
[0028] 第三方面,提供了一種任務(wù)處理裝置,所述裝置包括:
[0029] 第一獲取模塊,用于獲取重新啟動前預設(shè)時間段內(nèi)未成功執(zhí)行的第一流程實例, 所述第一流程實例為重新啟動前預設(shè)時間段內(nèi)包含未成功處理的任務(wù)對應(yīng)的流程實例,所 述第一流程實例中包括至少一個未成功處理的第一任務(wù);
[0030] 修復模塊,用于修復所述第一流程實例中的所有未成功處理的第一任務(wù),并修復 所述第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系;
[0031] 第一確定模塊,用于根據(jù)每個第一任務(wù)之間修復后的先后依賴關(guān)系確定所述第一 流程實例中已修復且需要處理的第一任務(wù);
[0032] 第一生成模塊,用于根據(jù)已修復且需要處理的第一任務(wù)生成第一任務(wù)處理指令, 所述第一任務(wù)處理指令中至少包括已修復且需要處理的第一任務(wù);
[0033] 第一發(fā)送模塊,用于將所述第一任務(wù)處理指令發(fā)送至第二服務(wù)器,由所述第二服 務(wù)器接收第一任務(wù)處理指令,并根據(jù)接收到的第一任務(wù)處理指令處理任務(wù)。
[0034] 結(jié)合第三方面,在第三方面的第一種可能的實現(xiàn)方式中,所述第一確定模塊,用于 根據(jù)每個第一任務(wù)之間修復后的先后依賴關(guān)系確定已修復的第一任務(wù)中無前序任務(wù)的第 一任務(wù),并將無前序任務(wù)的第一任務(wù)作為已修復且需要處理的第一任務(wù)。
[0035] 結(jié)合第三方面,在第三方面的第二種可能的實現(xiàn)方式中,所述裝置還包括:
[0036] 記錄模塊,用于記錄重新啟動前所述第一流程實例中的所有第一任務(wù)的狀態(tài)信 息,并記錄重新啟動前所述第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系的相關(guān)信 息;
[0037] 所述修復模塊,用于根據(jù)所述第一流程實例中的所有第一任務(wù)的狀態(tài)信息修復所 述第一流程實例中的所有第一任務(wù),并根據(jù)所述第一流程實例中每個第一任務(wù)之間的先后 依賴關(guān)系的相關(guān)信息修復所述第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系。
[0038] 結(jié)合第三方面,在第三方面的第三種可能的實現(xiàn)方式中,所述裝置還包括:
[0039] 第二獲取模塊,用于獲取當前任務(wù)流程,并根據(jù)當前任務(wù)流程生成第二流程實例, 所述第二流程實例中包括至少一個第二任務(wù),每個第二任務(wù)之間存在先后依賴關(guān)系;
[0040] 第二確定模塊,用于根據(jù)每個第二任務(wù)之間的先后依賴關(guān)系確定所述第二流程實 例中需要處理的第二任務(wù);
[0041] 第二生成模塊,用于根據(jù)需要處理的第二任務(wù)生成第二任務(wù)處理指令,所述第二 任務(wù)處理指令中至少包括需要處理的第二任務(wù);
[0042]第二發(fā)送模塊,用于將所述第二任務(wù)處理指令發(fā)送至第二服務(wù)器,由所述第二服 務(wù)器接收第二任務(wù)處理指令,并根據(jù)接收到的第二任務(wù)處理指令處理任務(wù)。
[0043] 第四方面,提供了一種任務(wù)處理裝置,所述裝置包括:
[0044]第一接收模塊,用于接收第一服務(wù)器發(fā)送的第一任務(wù)處理指令,所述第一任務(wù)處 理指令中至少包括已修復且需要處理的第一任務(wù),所述已修復且需要處理的第一任務(wù)為所 述第一服務(wù)器獲取重新啟動前預設(shè)時間段內(nèi)未成功執(zhí)行的第一流程實例中的任務(wù);
[0045] 第一處理模塊,用于根據(jù)接收到的第一任務(wù)處理指令處理任務(wù)。
[0046] 結(jié)合第四方面,在第四方面的第一種可能的實現(xiàn)方式中,所述裝置還包括:
[0047] 第二接收模塊,用于接收第一服務(wù)器發(fā)送的第二任務(wù)處理指令,所述第二任務(wù)處 理指令中至少包括需要處理的第二任務(wù),所述需要處理的第二任務(wù)為所述第一服務(wù)器根據(jù) 當前任務(wù)流程生成的第二流程實例中的任務(wù);
[0048] 第二處理模塊,用于根據(jù)接收到的第二任務(wù)處理指令處理任務(wù)。
[0049] 本發(fā)明實施例提供的技術(shù)方案帶來的有益效果是:
[0050]通過修復重新啟動前預設(shè)時間段內(nèi)未成功執(zhí)行的第一流程實例中的所有未成功 處理的第一任務(wù)及每個第一任務(wù)之間的先后依賴關(guān)系,根據(jù)修復后的先后依賴關(guān)系確定需 要處理的第一任務(wù),生成第一任務(wù)處理指令,將第一任務(wù)處理指令發(fā)送至第二服務(wù)器,由第 二服務(wù)器根據(jù)第一任務(wù)處理指令處理任務(wù)。由于能夠修復重新啟動前未成功執(zhí)行的第一流 程實例,從而在重新啟動后能重新處理第一流程實例中的任務(wù)。因此,處理任務(wù)的可用性較 高,穩(wěn)定性較好。

【專利附圖】

【附圖說明】
[0051] 為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使 用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于 本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他 的附圖。
[0052] 圖1是本發(fā)明一實施例提供的一種任務(wù)處理方法的實施環(huán)境示意圖;
[0053] 圖2是本發(fā)明另一實施例提供的一種任務(wù)處理方法的流程圖;
[0054] 圖3是本發(fā)明另一實施例提供的一種任務(wù)處理方法的流程圖;
[0055] 圖4是本發(fā)明另一實施例提供的一種任務(wù)處理方法的流程圖;
[0056] 圖5是本發(fā)明另一實施例提供的一種任務(wù)處理裝置的結(jié)構(gòu)示意圖;
[0057] 圖6是本發(fā)明另一實施例提供的一種任務(wù)處理裝置的結(jié)構(gòu)示意圖;
[0058] 圖7是本發(fā)明另一實施例提供的一種任務(wù)處理裝置的結(jié)構(gòu)示意圖;
[0059] 圖8是本發(fā)明另一實施例提供的一種服務(wù)器的結(jié)構(gòu)示意圖;
[0060] 圖9是本發(fā)明另一實施例提供的一種任務(wù)處理裝置的結(jié)構(gòu)示意圖;
[0061] 圖10是本發(fā)明另一實施例提供的一種任務(wù)處理裝置的結(jié)構(gòu)示意圖;
[0062] 圖11是本發(fā)明另一實施例提供的一種服務(wù)器的結(jié)構(gòu)示意圖。

【具體實施方式】
[0063] 為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明實施方 式作進一步地詳細描述。
[0064] 請參考圖1,其示出了本發(fā)明實施例提供的任務(wù)處理方法所涉及的實施環(huán)境示意 圖。如圖1所示,該實施環(huán)境包括第一服務(wù)器101及第二服務(wù)器102。通過圖1所示的實施 環(huán)境,第一服務(wù)器101與第二服務(wù)器102可通過無線網(wǎng)絡(luò)或有線網(wǎng)絡(luò)進行通信。
[0065] 為了便于說明,圖1示出的第一服務(wù)器101與第二服務(wù)器102僅代表多臺服務(wù)器 中的一臺。下面將以通過第一服務(wù)器101與第二服務(wù)器102之間的信息交互實現(xiàn)對任務(wù)進 行處理為例,來對本發(fā)明實施例提供的任務(wù)處理方法進行舉例說明。
[0066] 結(jié)合上述圖1所示的實施環(huán)境,本發(fā)明另一實施例提供了一種任務(wù)處理方法,參 見圖2,本發(fā)明實施例提供的方法流程包括:
[0067] 201 :獲取重新啟動前預設(shè)時間段內(nèi)未成功執(zhí)行的第一流程實例,第一流程實例為 重新啟動前預設(shè)時間段內(nèi)包含未成功處理的任務(wù)對應(yīng)的流程實例,第一流程實例中包括至 少一個未成功處理的第一任務(wù);
[0068] 202 :修復第一流程實例中的所有未成功處理的第一任務(wù),并修復第一流程實例中 每個第一任務(wù)之間的先后依賴關(guān)系;
[0069] 作為一種可選實施例,修復第一流程實例中的所有第一任務(wù),并修復第一流程實 例中每個第一任務(wù)之間的先后依賴關(guān)系之前,還包括:
[0070] 記錄重新啟動前第一流程實例中的所有第一任務(wù)的狀態(tài)信息,并記錄重新啟動前 第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系的相關(guān)信息;
[0071] 修復第一流程實例中的所有第一任務(wù),并修復第一流程實例中每個第一任務(wù)之間 的先后依賴關(guān)系,包括:
[0072] 根據(jù)第一流程實例中的所有第一任務(wù)的狀態(tài)信息修復第一流程實例中的所有第 一任務(wù),并根據(jù)第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系的相關(guān)信息修復第一流 程實例中每個第一任務(wù)之間的先后依賴關(guān)系。
[0073] 203:根據(jù)每個第一任務(wù)之間修復后的先后依賴關(guān)系確定第一流程實例中已修復 且需要處理的第一任務(wù),并根據(jù)已修復且需要處理的第一任務(wù)生成第一任務(wù)處理指令,第 一任務(wù)處理指令中至少包括已修復且需要處理的第一任務(wù);
[0074] 作為一種可選實施例,根據(jù)每個第一任務(wù)之間修復后的先后依賴關(guān)系確定第一流 程實例中已修復且需要處理的第一任務(wù),包括 :
[0075] 根據(jù)每個第一任務(wù)之間修復后的先后依賴關(guān)系確定已修復的第一任務(wù)中無前序 任務(wù)的第一任務(wù),并將無前序任務(wù)的第一任務(wù)作為已修復且需要處理的第一任務(wù)。
[0076] 204:將第一任務(wù)處理指令發(fā)送至第二服務(wù)器,由第二服務(wù)器接收第一任務(wù)處理指 令,并根據(jù)接收到的第一任務(wù)處理指令處理任務(wù)。
[0077] 作為一種可選實施例,該方法還包括:
[0078] 獲取當前任務(wù)流程,并根據(jù)當前任務(wù)流程生成第二流程實例,第二流程實例中包 括至少一個第二任務(wù),每個第二任務(wù)之間存在先后依賴關(guān)系;
[0079] 根據(jù)每個第二任務(wù)之間的先后依賴關(guān)系確定第二流程實例中需要處理的第二任 務(wù),并根據(jù)需要處理的第二任務(wù)生成第二任務(wù)處理指令,第二任務(wù)處理指令中至少包括需 要處理的第二任務(wù);
[0080] 將第二任務(wù)處理指令發(fā)送至第二服務(wù)器,由第二服務(wù)器接收第二任務(wù)處理指令, 并根據(jù)接收到的第二任務(wù)處理指令處理任務(wù)。
[0081] 本發(fā)明實施例提供的方法,通過修復重新啟動前預設(shè)時間段內(nèi)未成功執(zhí)行的第一 流程實例中的所有未成功處理的第一任務(wù)及每個第一任務(wù)之間的先后依賴關(guān)系,根據(jù)修復 后的先后依賴關(guān)系確定需要處理的第一任務(wù),生成第一任務(wù)處理指令,將第一任務(wù)處理指 令發(fā)送至第二服務(wù)器,由第二服務(wù)器根據(jù)第一任務(wù)處理指令處理任務(wù)。由于能夠修復重新 啟動前未成功執(zhí)行的第一流程實例,從而在重新啟動后能重新處理第一流程實例中的任 務(wù)。因此,處理任務(wù)的可用性較高,穩(wěn)定性較好。
[0082]結(jié)合上述圖1所示的實施環(huán)境,本發(fā)明另一實施例提供了一種任務(wù)處理方法,參 見圖3,本發(fā)明實施例提供的方法流程包括:
[0083] 301:接收第一服務(wù)器發(fā)送的第一任務(wù)處理指令,第一任務(wù)處理指令中至少包括已 修復且需要處理的第一任務(wù),已修復且需要處理的第一任務(wù)為第一服務(wù)器獲取重新啟動前 預設(shè)時間段內(nèi)未成功執(zhí)行的第一流程實例中的任務(wù);
[0084] 302:根據(jù)接收到的第一任務(wù)處理指令處理任務(wù)。
[0085] 作為一種可選實施例,該方法還包括:
[0086] 接收第一服務(wù)器發(fā)送的第二任務(wù)處理指令,第二任務(wù)處理指令中至少包括需要處 理的第二任務(wù),需要處理的第二任務(wù)為第一服務(wù)器根據(jù)當前任務(wù)流程生成的第二流程實例 中的任務(wù);
[0087] 根據(jù)接收到的第二任務(wù)處理指令處理任務(wù)。
[0088] 本發(fā)明實施例提供的方法,通過接收第一服務(wù)器發(fā)送的第一任務(wù)處理指令,第一 任務(wù)處理指令中至少包括已修復且需要處理的第一任務(wù),已修復且需要處理的第一任務(wù)為 第一服務(wù)器獲取重新啟動前預設(shè)時間段內(nèi)未成功執(zhí)行的第一流程實例中的任務(wù),根據(jù)接收 到的第一任務(wù)處理指令處理任務(wù)。由于第一服務(wù)器能夠修復重新啟動前未成功執(zhí)行的第一 流程實例,從而在第一服務(wù)器重新啟動后第二服務(wù)器能重新處理第一流程實例中的任務(wù)。 因此,處理任務(wù)的可用性較高,穩(wěn)定性較好。
[0089] 結(jié)合圖1及上述實施環(huán)境的內(nèi)容,本發(fā)明實施例提供了一種業(yè)務(wù)處理方法,該方 法涉及第一服務(wù)器及第二服務(wù)器。結(jié)合上述圖2及圖3對應(yīng)的實施例中的內(nèi)容,對本實施 例提供的方法進行舉例說明。參見圖4,本實施例提供的方法流程包括:
[0090] 401 :第一服務(wù)器獲取重新啟動前預設(shè)時間段內(nèi)未成功執(zhí)行的第一流程實例,第一 流程實例為重新啟動前預設(shè)時間段內(nèi)包含未成功處理的任務(wù)對應(yīng)的流程實例,第一流程實 例中包括至少一個未成功處理的第一任務(wù);
[0091] 由于第一服務(wù)器在處理任務(wù)時,需按照任務(wù)流程進行處理。例如,以任務(wù)流程為任 務(wù)流程1為例,任務(wù)流程1中任務(wù)執(zhí)行的順序為先執(zhí)行任務(wù)A,再執(zhí)行任務(wù)B,最后執(zhí)行任務(wù) C。若確定了任務(wù)流程,并確定了任務(wù)流程的執(zhí)行時間,則可確定一個流程實例。例如,若任 務(wù)流程為任務(wù)流程1,且任務(wù)流程1需要在今天下午3點執(zhí)行。此時,便確定了一個任務(wù)流 程1的流程實例,且該流程實例中至少包括一個需要處理的任務(wù)。
[0092]另外,由于在執(zhí)行上述流程實例的過程中,流程實例可能會執(zhí)行失敗。對應(yīng)地,流 程實例中的任務(wù)也會處理失敗。或者,流程實例中有些任務(wù)會處理失敗。因此,在執(zhí)行流程 實例時可能會存在執(zhí)行失敗的流程實例。
[0093]以上述內(nèi)容作為基礎(chǔ),關(guān)于第一服務(wù)器獲取重新啟動前預設(shè)時間段內(nèi)未成功執(zhí)行 的第一流程實例的方式,本實施例對此不作具體限定,包括但不限于:預先將重新啟動前預 設(shè)時間段內(nèi)未成功執(zhí)行的第一流程實例進行存儲;獲取存儲的第一流程實例。其中,預設(shè)時 間段可以根據(jù)需求進行設(shè)置,本實施例對此不作具體限定。另外,第一流程實例為重新啟動 前預設(shè)時間段內(nèi)包含未成功處理的任務(wù)對應(yīng)的流程實例,為了便于敘述,本實施例中將第 一流程實例中包括的未成功處理的任務(wù)稱為第一任務(wù)。例如,預設(shè)時間段可以設(shè)置為一個 月,則第一服務(wù)器會預先存儲重新啟動前一個月內(nèi)未成功執(zhí)行的第一流程實例,并在重新 啟動后獲取預先存儲的第一流程實例。
[0094]其中,重新啟動前預設(shè)時間段內(nèi)未成功執(zhí)行的第一流程實例可以存儲在數(shù)據(jù)庫 中,該數(shù)據(jù)庫可以存儲在除第一服務(wù)器及第二服務(wù)器之外的其它服務(wù)器中,本實施例對此 不作具體限定。具體獲取第一流程實例時,可從數(shù)據(jù)庫中獲取,本實施例對此也不作具體限 定。另外,第一流程實例中可以包含未成功處理的第一任務(wù),還可以包含第一任務(wù)之間的先 后依賴關(guān)系,本實施例對此不作具體限定。
[0095] 402:第一服務(wù)器修復第一流程實例中的所有未成功處理的第一任務(wù),并修復第一 流程實例中每個第一任務(wù)之間的先后依賴關(guān)系;
[0096] 在上述步驟401中,由于在數(shù)據(jù)庫中存儲有未成功執(zhí)行的流程實例,且未成功執(zhí) 行的流程實例中包含著未成功處理的第一任務(wù),而這些任務(wù)在第一服務(wù)器重啟前均已置入 內(nèi)存并等待被處理。因此,需將這些未成功處理的第一任務(wù)重新恢復至第一服務(wù)器重啟前 的狀態(tài),即需要對未成功處理的第一任務(wù)進行修復。
[0097] 本實施例不對第一服務(wù)器修復第一流程實例中的所有未成功處理的第一任務(wù)實 例的方式作具體限定,包括但不限于:獲取第一流程實例中的第一任務(wù)對應(yīng)的任務(wù)實例對 象,將第一任務(wù)對應(yīng)的任務(wù)實例對象重新置入內(nèi)存中。其中,任務(wù)實例對象可以包含第一任 務(wù)的執(zhí)行代碼,第一任務(wù)的執(zhí)行時間及第一任務(wù)的其它相關(guān)信息,本實施例不對任務(wù)實例 對象的內(nèi)容作具體限定。
[0098]例如,以第一流程實例中包含有第一任務(wù)A為例。從數(shù)據(jù)庫中取出第一流程實例 后,可獲取第一流程實例中第一任務(wù)A對應(yīng)的任務(wù)實例對象,并將第一任務(wù)A對應(yīng)的任務(wù)實 例對象重新置入內(nèi)存中。其中,第一任務(wù)A對應(yīng)的任務(wù)實例對象中可以包含第一任務(wù)A的 執(zhí)行代碼,還可以包含第一任務(wù)A的執(zhí)行時間等相關(guān)信息。
[0099]另外,由于第一流程實例中除了包括未成功處理的第一任務(wù)之外,還包括每個第 一任務(wù)之間的先后依賴關(guān)系,即每個第一任務(wù)的前序任務(wù)與后序任務(wù)分別是哪些任務(wù)。因 此,除了對第一流程實例中每個第一任務(wù)進行修復外,還需要對第一流程實例中每個第一 任務(wù)之間的先后依賴關(guān)系進行修復。
[0100] 為了便于對第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系進行修復,數(shù)據(jù)庫 中可以記錄第一服務(wù)器在重新啟動前第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系 的相關(guān)信息,本實施例對此不作具體限定。其中,每個第一任務(wù)之間的先后依賴關(guān)系的相關(guān) 信息中可以包含每個第一任務(wù)的前序任務(wù)或后序任務(wù)的任務(wù)標識,本實施例對此也不作具 體限定。
[0101] 以上述內(nèi)容為基礎(chǔ),本實施例不對第一服務(wù)器修復第一流程實例中每個第一任務(wù) 之間的先后依賴關(guān)系的方式作具體限定,包括但不限于:將第一流程實例中每個第一任務(wù) 之間的先后依賴關(guān)系的相關(guān)信息置入內(nèi)存中,其中,每個第一任務(wù)均有對應(yīng)的先后依賴關(guān) 系。
[0102] 例如,以任務(wù)A,任務(wù)B及任務(wù)C,且任務(wù)執(zhí)行的順序為先執(zhí)行任務(wù)A,再執(zhí)行任務(wù) B,最后執(zhí)行任務(wù)C為例。此時,任務(wù)之間的先后依賴關(guān)系的相關(guān)信息可以如下表所示:
[0103]表1

【權(quán)利要求】
1. 一種任務(wù)處理方法,其特征在于,所述方法包括: 獲取重新啟動前預設(shè)時間段內(nèi)未成功執(zhí)行的第一流程實例,所述第一流程實例為重新 啟動前預設(shè)時間段內(nèi)包含未成功處理的任務(wù)對應(yīng)的流程實例,所述第一流程實例中包括至 少一個未成功處理的第一任務(wù); 修復所述第一流程實例中的所有未成功處理的第一任務(wù),并修復所述第一流程實例中 每個第一任務(wù)之間的先后依賴關(guān)系; 根據(jù)每個第一任務(wù)之間修復后的先后依賴關(guān)系確定所述第一流程實例中已修復且需 要處理的第一任務(wù),并根據(jù)已修復且需要處理的第一任務(wù)生成第一任務(wù)處理指令,所述第 一任務(wù)處理指令中至少包括已修復且需要處理的第一任務(wù); 將所述第一任務(wù)處理指令發(fā)送至第二服務(wù)器,由所述第二服務(wù)器接收第一任務(wù)處理指 令,并根據(jù)接收到的第一任務(wù)處理指令處理任務(wù)。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)每個第一任務(wù)之間修復后的先 后依賴關(guān)系確定所述第一流程實例中已修復且需要處理的第一任務(wù),包括: 根據(jù)每個第一任務(wù)之間修復后的先后依賴關(guān)系確定已修復的第一任務(wù)中無前序任務(wù) 的第一任務(wù),并將無前序任務(wù)的第一任務(wù)作為已修復且需要處理的第一任務(wù)。
3. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述修復所述第一流程實例中的所有第 一任務(wù),并修復所述第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系之前,還包括: 記錄重新啟動前所述第一流程實例中的所有第一任務(wù)的狀態(tài)信息,并記錄重新啟動前 所述第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系的相關(guān)信息; 所述修復所述第一流程實例中的所有第一任務(wù),并修復所述第一流程實例中每個第一 任務(wù)之間的先后依賴關(guān)系,包括: 根據(jù)所述第一流程實例中的所有第一任務(wù)的狀態(tài)信息修復所述第一流程實例中的所 有第一任務(wù),并根據(jù)所述第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系的相關(guān)信息修 復所述第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系。
4. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 獲取當前任務(wù)流程,并根據(jù)當前任務(wù)流程生成第二流程實例,所述第二流程實例中包 括至少一個第二任務(wù),每個第二任務(wù)之間存在先后依賴關(guān)系; 根據(jù)每個第二任務(wù)之間的先后依賴關(guān)系確定所述第二流程實例中需要處理的第二任 務(wù),并根據(jù)需要處理的第二任務(wù)生成第二任務(wù)處理指令,所述第二任務(wù)處理指令中至少包 括需要處理的第二任務(wù); 將所述第二任務(wù)處理指令發(fā)送至第二服務(wù)器,由所述第二服務(wù)器接收第二任務(wù)處理指 令,并根據(jù)接收到的第二任務(wù)處理指令處理任務(wù)。
5. -種任務(wù)處理方法,其特征在于,所述方法包括: 接收第一服務(wù)器發(fā)送的第一任務(wù)處理指令,所述第一任務(wù)處理指令中至少包括已修復 且需要處理的第一任務(wù),所述已修復且需要處理的第一任務(wù)為所述第一服務(wù)器獲取重新啟 動前預設(shè)時間段內(nèi)未成功執(zhí)行的第一流程實例中的任務(wù); 根據(jù)接收到的第一任務(wù)處理指令處理任務(wù)。
6. 根據(jù)權(quán)利要求5所述的方法,其特征在于,所述方法還包括: 接收第一服務(wù)器發(fā)送的第二任務(wù)處理指令,所述第二任務(wù)處理指令中至少包括需要處 理的第二任務(wù),所述需要處理的第二任務(wù)為所述第一服務(wù)器根據(jù)當前任務(wù)流程生成的第二 流程實例中的任務(wù); 根據(jù)接收到的第二任務(wù)處理指令處理任務(wù)。
7. -種任務(wù)處理裝置,其特征在于,所述裝置包括: 第一獲取模塊,用于獲取重新啟動前預設(shè)時間段內(nèi)未成功執(zhí)行的第一流程實例,所述 第一流程實例為重新啟動前預設(shè)時間段內(nèi)包含未成功處理的任務(wù)對應(yīng)的流程實例,所述第 一流程實例中包括至少一個未成功處理的第一任務(wù); 修復模塊,用于修復所述第一流程實例中的所有未成功處理的第一任務(wù),并修復所述 第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系; 第一確定模塊,用于根據(jù)每個第一任務(wù)之間修復后的先后依賴關(guān)系確定所述第一流程 實例中已修復且需要處理的第一任務(wù); 第一生成模塊,用于根據(jù)已修復且需要處理的第一任務(wù)生成第一任務(wù)處理指令,所述 第一任務(wù)處理指令中至少包括已修復且需要處理的第一任務(wù); 第一發(fā)送模塊,用于將所述第一任務(wù)處理指令發(fā)送至第二服務(wù)器,由所述第二服務(wù)器 接收第一任務(wù)處理指令,并根據(jù)接收到的第一任務(wù)處理指令處理任務(wù)。
8. 根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述第一確定模塊,用于根據(jù)每個第一任 務(wù)之間修復后的先后依賴關(guān)系確定已修復的第一任務(wù)中無前序任務(wù)的第一任務(wù),并將無前 序任務(wù)的第一任務(wù)作為已修復且需要處理的第一任務(wù)。
9. 根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述裝置還包括: 記錄模塊,用于記錄重新啟動前所述第一流程實例中的所有第一任務(wù)的狀態(tài)信息,并 記錄重新啟動前所述第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系的相關(guān)信息; 所述修復模塊,用于根據(jù)所述第一流程實例中的所有第一任務(wù)的狀態(tài)信息修復所述第 一流程實例中的所有第一任務(wù),并根據(jù)所述第一流程實例中每個第一任務(wù)之間的先后依賴 關(guān)系的相關(guān)信息修復所述第一流程實例中每個第一任務(wù)之間的先后依賴關(guān)系。
10. 根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述裝置還包括: 第二獲取模塊,用于獲取當前任務(wù)流程,并根據(jù)當前任務(wù)流程生成第二流程實例,所述 第二流程實例中包括至少一個第二任務(wù),每個第二任務(wù)之間存在先后依賴關(guān)系; 第二確定模塊,用于根據(jù)每個第二任務(wù)之間的先后依賴關(guān)系確定所述第二流程實例中 需要處理的第二任務(wù); 第二生成模塊,用于根據(jù)需要處理的第二任務(wù)生成第二任務(wù)處理指令,所述第二任務(wù) 處理指令中至少包括需要處理的第二任務(wù); 第二發(fā)送模塊,用于將所述第二任務(wù)處理指令發(fā)送至第二服務(wù)器,由所述第二服務(wù)器 接收第二任務(wù)處理指令,并根據(jù)接收到的第二任務(wù)處理指令處理任務(wù)。
11. 一種任務(wù)處理裝置,其特征在于,所述裝置包括: 第一接收模塊,用于接收第一服務(wù)器發(fā)送的第一任務(wù)處理指令,所述第一任務(wù)處理指 令中至少包括已修復且需要處理的第一任務(wù),所述已修復且需要處理的第一任務(wù)為所述第 一服務(wù)器獲取重新啟動前預設(shè)時間段內(nèi)未成功執(zhí)行的第一流程實例中的任務(wù); 第一處理模塊,用于根據(jù)接收到的第一任務(wù)處理指令處理任務(wù)。
12. 根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述裝置還包括: 第二接收模塊,用于接收第一服務(wù)器發(fā)送的第二任務(wù)處理指令,所述第二任務(wù)處理指 令中至少包括需要處理的第二任務(wù),所述需要處理的第二任務(wù)為所述第一服務(wù)器根據(jù)當前 任務(wù)流程生成的第二流程實例中的任務(wù); 第二處理模塊,用于根據(jù)接收到的第二任務(wù)處理指令處理任務(wù)。
【文檔編號】G06F9/44GK104484167SQ201410737476
【公開日】2015年4月1日 申請日期:2014年12月5日 優(yōu)先權(quán)日:2014年12月5日
【發(fā)明者】陳武, 陳仕明 申請人:廣州華多網(wǎng)絡(luò)科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
龙海市| 乐昌市| 庄河市| 望江县| 长治县| 翼城县| 修文县| 嵊泗县| 沐川县| 阳原县| 繁昌县| 临漳县| 岑溪市| 红原县| 金坛市| 合作市| 桃江县| 竹北市| 湖口县| 嵊泗县| 红河县| 晋州市| 荥经县| 察隅县| 喀喇沁旗| 伊宁县| 凤翔县| 孝义市| 满城县| 合江县| 蒙阴县| 张家川| 澎湖县| 蒙山县| 太仓市| 应城市| 宁城县| 左云县| 芦山县| 营口市| 新田县|