欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

分布式系統(tǒng)中的任務處理方法和裝置的制造方法

文檔序號:9672974閱讀:401來源:國知局
分布式系統(tǒng)中的任務處理方法和裝置的制造方法
【技術(shù)領域】
[0001]本申請涉及分布式計算領域,特別是涉及分布式系統(tǒng)中的任務處理方法和裝置。
【背景技術(shù)】
[0002]無論是在大型的互聯(lián)網(wǎng)應用中,還是在企業(yè)級架構(gòu)中,都越來越廣泛地采用分布式服務框架來提供各種服務。例如,在一個大型的互聯(lián)網(wǎng)應用中,不可避免地需要將一個“應用”拆分成多個“業(yè)務”(或者,也可以稱為“服務”),而每個“業(yè)務”對應的任務最終是由分布式系統(tǒng)中的服務器處理完成的。
[0003]一般情況下,一個“應用”下的各“業(yè)務”之間很可能會存在依賴關(guān)系,并且,依賴關(guān)系還可能錯綜復雜。因此,對于每一個“業(yè)務”而言,都有可能因為其依賴的其它“業(yè)務”出現(xiàn)異常而被迫中斷。此時,就需要對中斷“業(yè)務”進行異常處理。現(xiàn)有技術(shù)中的一種異常處理方式是:將中斷“業(yè)務”在中斷前的業(yè)務數(shù)據(jù)保存到存儲服務器上,待觸發(fā)重新處理該中斷“業(yè)務”對應的任務時,再由分布式系統(tǒng)中的任務服務器(或任務進程)根據(jù)存儲服務器上的業(yè)務數(shù)據(jù)繼續(xù)處理該中斷“業(yè)務”對應的任務。
[0004]在實現(xiàn)本申請的過程中,本申請的發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下問題:當“業(yè)務”中斷后,是由工作人員通過在后臺界面上進行人工操作來觸發(fā)重新處理中斷“業(yè)務”對應的任務的。但是,如果在誤操作的情況下,多名工作人員重復性地觸發(fā)重新處理同一個中斷“業(yè)務”對應的任務,就會造成多個任務服務器(或任務進程)重復處理同一個任務,從而引起業(yè)務數(shù)據(jù)不滿足冪等性要求。

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

[0005]為了解決上述技術(shù)問題,本申請實施例提供了分布式系統(tǒng)中的任務處理方法和裝置,以解決現(xiàn)有技術(shù)中因多個任務服務器(或任務進程)重復處理同一個任務所引起的業(yè)務數(shù)據(jù)不滿足冪等性的問題。
[0006]本申請實施例公開了如下技術(shù)方案:
[0007]—種分布式系統(tǒng)中的任務處理方法,所述分布式系統(tǒng)包括多個任務處理器,所述方法包括:
[0008]所述多個任務處理器中的任一任務處理器在啟動任務之后且處理所述任務之前,判斷所述任務的當前存活狀態(tài)是否為存活;
[0009]如果所述任務的當前存活狀態(tài)為存活,則不處理所述任務;如果所述任務的當前存活狀態(tài)為死亡,先將所述任務的當前存活狀態(tài)從死亡標記為存活,再處理所述任務,并在處理完所述任務后,將所述任務的當前存活狀態(tài)從存活標記為死亡。
[0010]優(yōu)選的,所述方法還包括:
[0011]在將所述任務的當前存活狀態(tài)從死亡標記為存活后,所述多個任務處理器中的任一任務處理器被設置為定時更新所述任務的當前存活時間。
[0012]進一步優(yōu)選的,所述方法還包括:
[0013]所述多個任務處理器中的任一任務處理器被設置為定時判斷所述任務的當前存活狀態(tài)是否為存活;
[0014]如果所述任務的當前存活狀態(tài)為存活,進一步判斷所述任務持續(xù)存活的時間長度是否大于或等于預設的時間長度閾值;
[0015]如果是,更改所述任務的當前存活狀態(tài)為死亡,否則,保持所述任務的當前存活狀態(tài)為存活。
[0016]優(yōu)選的,所述方法還包括:
[0017]在啟動任務之前,判斷預設的工作周期是否到達;
[0018]如果是,自動啟動所述任務,否則,不啟動所述任務。
[0019]優(yōu)選的,所述分布式系統(tǒng)還包括與所述多個任務處理器通信的存儲服務器,所述判斷所述任務的當前存活狀態(tài)是否為存活,包括:
[0020]讀取保存在所述存儲服務器中的用于指示所述任務的當前存活狀態(tài)的標識;
[0021]根據(jù)所述標識確定所述任務的當前存活狀態(tài)是否為存活。
[0022]進一步優(yōu)選的,每種類型下的任務在所述存儲服務器上保存唯一一個所述標識。
[0023]一種分布式系統(tǒng)中的任務處理裝置,包括:
[0024]第一判斷模塊,用于在啟動任務之后且處理所述任務之前,判斷所述任務的當前存活狀態(tài)是否為存活;
[0025]任務處理模塊,用于如果所述第一判斷模塊的判斷結(jié)果為是,不處理所述任務,如果所述第一判斷模塊的判斷結(jié)果為否,先將所述任務的當前存活狀態(tài)從死亡標記為存活,再處理所述任務,并在處理完所述任務后,將所述任務的當前存活狀態(tài)從存活標記為死亡。
[0026]優(yōu)選的,所述裝置還包括:
[0027]存活時間更新模塊,用于在將所述任務的當前存活狀態(tài)從死亡標記為存活后,定時更新所述任務的當前存活時間。
[0028]進一步優(yōu)選的,所述裝置還包括:
[0029]第二判斷模塊,用于定時判斷所述任務的當前存活狀態(tài)是否為存活;
[0030]第三判斷模塊,用于如果所述第二判斷模塊的判斷結(jié)果為是,進一步判斷所述任務持續(xù)存活的時間長度是否大于或等于預設的時間長度閾值;
[0031]狀態(tài)修正模塊,用于如果所述第三判斷模塊的判斷結(jié)果為是,更改所述任務的當前存活狀態(tài)為死亡,如果所述第三判斷模塊的判斷結(jié)果為否,保持所述任務的當前存活狀態(tài)為存活。
[0032]優(yōu)選的,所述裝置還包括:
[0033]第四判斷模塊,用于在啟動任務之前,判斷預設的工作周期是否到達;
[0034]啟動模塊,用于如果所述第四判斷模塊的判斷結(jié)果為是,自動啟動所述任務,如果所述第四判斷模塊的判斷結(jié)果為否,不啟動所述任務。
[0035]優(yōu)選的,所述第一判斷模塊包括:
[0036]讀取子模塊,用于讀取保存在存儲服務器中的用于指示所述任務的當前存活狀態(tài)的標識;
[0037]識別子模塊,用于根據(jù)所述標識確定所述任務的當前存活狀態(tài)是否為存活。
[0038]進一步優(yōu)選的,每種類型下的任務在所述存儲服務器上保存唯一一個所述標識。
[0039]由上述實施例可以看出,與現(xiàn)有技術(shù)相比,本申請技術(shù)方案的優(yōu)點在于:
[0040]當分布式系統(tǒng)中的一個任務處理器(或任務進程)正在處理某任務時,該任務的存活狀態(tài)就會標記為存活,此時,如果有其它的任務處理器(或任務進程)也想要處理該任務,根據(jù)存活狀態(tài)就可以確定該任務為存活,進而就不會再去處理該任務。當該任務處理器(或任務進程)處理完該任務時,該任務的存活狀態(tài)就會標識為死亡,此時,如果有其它的任務處理器(或任務進程)也想要處理該任務,根據(jù)存活狀態(tài)就可以確定該任務為死亡,就可以處理該任務。保證多個任務服務器(或任務進程)不會重復處理同一個任務,進而也保證了業(yè)務數(shù)據(jù)的冪等性。
【附圖說明】
[0041]為了更清楚地說明本申請實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請的一些實施例,對于本領域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0042]圖1示意性地示出了本申請的實施方式可以在其中實施的示例性應用場景;
[0043]圖2為本申請一個實施例提供的一種分布式系統(tǒng)中的任務處理方法的流程圖;
[0044]圖3為本申請另一個實施例提供的一種分布式系統(tǒng)中的任務處理方法的流程圖;
[0045]圖4為本申請另一個實施例提供的一種分布式系統(tǒng)中的任務處理方法的流程圖;
[0046]圖5為本申請另一個實施例提供的一種分布式系統(tǒng)場景下的任務處理方法的示意圖;
[0047]圖6為本申請一個實施例提供的一種分布式系統(tǒng)中的任務處理裝置的結(jié)構(gòu)框圖;
[0048]圖7為本申請另一個實施例提供的另一種分布式系統(tǒng)中的任務處理裝置的結(jié)構(gòu)框圖;
當前第1頁1 2 3 4 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
湖北省| 婺源县| 乌海市| 长汀县| 沂水县| 绵竹市| 安新县| 南涧| 张家港市| 荆州市| 永吉县| 长沙县| 盐山县| 盖州市| 黄浦区| 高淳县| 白沙| 济南市| 桐乡市| 翁牛特旗| 南部县| 南宁市| 沭阳县| 丹寨县| 郎溪县| 夏河县| 商水县| 东山县| 黔西县| 蛟河市| 驻马店市| 综艺| 扎囊县| 天等县| 从江县| 张北县| 桦川县| 白城市| 洪洞县| 宾阳县| 察隅县|