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

集群任務協(xié)調(diào)方法、系統(tǒng)和裝置與流程

文檔序號:12905955閱讀:180來源:國知局
集群任務協(xié)調(diào)方法、系統(tǒng)和裝置與流程

本申請涉及計算機技術領域,尤其涉及集群任務協(xié)調(diào)方法、系統(tǒng)和裝置。



背景技術:

在互聯(lián)網(wǎng)和電子商務領域,許多應用系統(tǒng)中的任務是相互聯(lián)系的,例如某些任務需要拆分成多個子任務到多個節(jié)點進行分別處理,或者某些定時任務具有排他性,這需要將上述各任務進行協(xié)調(diào)處理。

在現(xiàn)有技術中,應用系統(tǒng)通常采用quatz集群或消息隊列進行任務協(xié)調(diào)。其中,quatz集群是通過預先在任務中嵌入相應的控制代碼,而后使用如數(shù)據(jù)庫等公共資源進行任務的協(xié)調(diào),quatz集群通常只能在任務處理節(jié)點中選取一個節(jié)點來處理任務,即上述quatz集群通常僅支持獨占任務的協(xié)調(diào)處理;消息隊列通常是利用自身的信息分發(fā)特性實現(xiàn)任務簡單的分發(fā)協(xié)調(diào),并且消息隊列通常也是將任務分發(fā)到某一個節(jié)點進行任務處理,即消息隊列也僅支持獨占任務的協(xié)調(diào)處理。但是,通常應用系統(tǒng)中不僅包括獨占任務,還包括需要多個節(jié)點同時處理的并行任務,由此可見,這里還需要一種可以協(xié)調(diào)并行任務的方法。



技術實現(xiàn)要素:

本申請的目的在于提出一種改進的集群任務協(xié)調(diào)方法、系統(tǒng)和裝置,來解決以上背景技術部分提到的技術問題。

第一方面,本申請?zhí)峁┝艘环N集群任務協(xié)調(diào)方法,所述方法包括:包含多個節(jié)點的集群啟動時,zookeeper服務器從所述集群的各所述節(jié)點中確定一個主節(jié)點和多個從節(jié)點;各所述節(jié)點向所述zookeeper服務器注冊該節(jié)點待執(zhí)行任務的任務信息,且所述主節(jié)點從所述 zookeeper服務器獲取各所述任務的任務信息,其中,所述任務信息包括該節(jié)點待執(zhí)行任務的觸發(fā)條件;當所述主節(jié)點根據(jù)所述任務信息確定第一任務被觸發(fā)時,所述主節(jié)點從各所述從節(jié)點中確定用于執(zhí)行所述第一任務的至少一個第一從節(jié)點,其中,所述第一任務為在所述zookeeper服務器注冊的任意一個任務;所述主節(jié)點向所述第一從節(jié)點分配所述第一任務。

在一些實施例中,所述任務信息包括任務類型信息,其中,所述任務類型包括獨占任務和并行任務;所述主節(jié)點從各所述從節(jié)點中確定用于執(zhí)行所述第一任務的至少一個第一從節(jié)點,包括:若所述第一任務為獨占任務,則所述主節(jié)點從各所述從節(jié)點中確定用于執(zhí)行所述第一任務的一個第一從節(jié)點;若所述第一任務為并行任務,則所述第一任務包含多個子任務,所述主節(jié)點從各所述從節(jié)點中確定用于執(zhí)行各所述子任務的多個第一從節(jié)點。

在一些實施例中,所述方法還包括:當所述主節(jié)點根據(jù)所述任務信息確定第一任務被觸發(fā)時,所述主節(jié)點生成所述第一任務的會話,其中,所述會話用于監(jiān)控所述第一任務的處理進程。

在一些實施例中,所述方法還包括:所述任務信息還包括該節(jié)點待執(zhí)行任務耗時最大閾值;所述方法還包括:基于所述第一任務的會話,所述主節(jié)點獲取所述第一任務的耗時長度;當所述第一任務的耗時長度大于該第一任務耗時最大閾值時,所述會話標記所述第一任務超時。

在一些實施例中,所述方法還包括:當所述第一任務超時或失敗時,所述主節(jié)點確定用于執(zhí)行該第一任務的至少一個第二從節(jié)點;以及所述主節(jié)點向所述第二從節(jié)點分配所述第一任務。

第二方面,本申請?zhí)峁┝艘环N集群任務協(xié)調(diào)系統(tǒng),所述系統(tǒng)包括:zookeeper服務器,用于從所述集群的各節(jié)點中確定一個主節(jié)點和多個從節(jié)點,存儲各所述節(jié)點待執(zhí)行任務的任務信息,其中,所述任務信息包括該節(jié)點待執(zhí)行任務的觸發(fā)條件;所述主節(jié)點,用于從所述zookeeper服務器獲取各所述任務的任務信息,以及當確定任意一任務被觸發(fā)時,將該任務分配到對應的從節(jié)點;所述從節(jié)點,用于執(zhí)行所 述主節(jié)點分配的任務。

在一些實施例中,所述主節(jié)點還用于生成所述任務的會話,根據(jù)所述會話確定處理超時或失敗的任務,并為所述超時或失敗的任務重新分配對應的從節(jié)點。

第三方面,本申請?zhí)峁┝艘环N集群定時任務協(xié)調(diào)系統(tǒng),所述裝置包括:主從節(jié)點確定模塊,配置用于包含多個節(jié)點的集群啟動時,zookeeper服務器從所述集群的各所述節(jié)點中確定一個主節(jié)點和多個從節(jié)點;任務信息注冊模塊,配置用于各所述節(jié)點向所述zookeeper服務器注冊該節(jié)點待執(zhí)行任務的任務信息,且所述主節(jié)點從所述zookeeper服務器獲取各所述任務的任務信息,其中,所述任務信息包括該節(jié)點待執(zhí)行任務的觸發(fā)條件;第一從節(jié)點確定模塊,配置用于當所述主節(jié)點根據(jù)所述任務信息確定第一任務被觸發(fā)時,所述主節(jié)點從各所述從節(jié)點中確定用于執(zhí)行所述第一任務的至少一個第一從節(jié)點,其中,所述第一任務為在所述zookeeper服務器注冊的任意一個任務;第一任務分配模塊,配置用于所述主節(jié)點向所述第一從節(jié)點分配所述第一任務。

在一些實施例中,所述任務信息包括任務類型信息,其中,所述任務類型包括獨占任務和并行任務;所述第一從節(jié)點確定模塊配置具體用于:若所述第一任務為獨占任務,則所述主節(jié)點從各所述從節(jié)點中確定用于執(zhí)行所述第一任務的一個第一從節(jié)點;若所述第一任務為并行任務,則所述第一任務包含多個子任務,所述主節(jié)點從各所述從節(jié)點中確定用于執(zhí)行各所述子任務的多個第一從節(jié)點。

在一些實施例中,所述裝置還包括:會話生成模塊,配置用于當所述主節(jié)點根據(jù)所述任務信息確定第一任務被觸發(fā)時,所述主節(jié)點生成所述第一任務的會話,其中,所述會話用于監(jiān)控所述第一任務的處理進程。

在一些實施例中,所述任務信息還包括該節(jié)點待執(zhí)行任務耗時最大閾值;所述裝置還包括:超時標記模塊,配置具體用于基于所述第一任務的會話,所述主節(jié)點獲取所述第一任務的耗時長度;當所述第一任務的耗時長度大于該第一任務耗時最大閾值時,所述會話標記所 述第一任務超時。

在一些實施例中,所述裝置還包括第二從節(jié)點確定模塊:配置用于當所述第一任務超時或失敗時,所述主節(jié)點確定用于執(zhí)行該第一任務的至少一個第二從節(jié)點;以及所述主節(jié)點向所述第二從節(jié)點分配所述第一任務。

本申請?zhí)峁┑募喝蝿諈f(xié)調(diào)方法、系統(tǒng)和裝置,zookeeper服務器在集群的各節(jié)點中確定主節(jié)點和從節(jié)點,之后各節(jié)點向zookeeper服務器注冊各節(jié)點待執(zhí)行任務的任務信息,而后當主節(jié)點根據(jù)所述任務信息確定第一任務被觸發(fā)時,主節(jié)點可以確定用于執(zhí)行該第一任務的至少一個第一從節(jié)點,最后將第一任務分配給所述第一從節(jié)點,不依賴數(shù)據(jù)庫,可靠性增強,還可以通過選擇一個或多個節(jié)點協(xié)調(diào)處理不同類型任務。

附圖說明

通過閱讀參照以下附圖所作的對非限制性實施例所作的詳細描述,本申請的其它特征、目的和優(yōu)點將會變得更明顯:

圖1是本申請的集群任務協(xié)調(diào)系統(tǒng)的一個實施例的架構圖;

圖2是根據(jù)本申請的集群任務協(xié)調(diào)方法的一個實施例的流程圖;

圖3是根據(jù)本申請的集群任務協(xié)調(diào)方法的又一個實施例的流程圖;

圖4是根據(jù)本申請的集群任務協(xié)調(diào)裝置的一個實施例的結構示意圖;

圖5是適于用來實現(xiàn)本申請實施例的終端設備或服務器的計算機系統(tǒng)的結構示意圖。

具體實施方式

下面結合附圖和實施例對本申請作進一步的詳細說明??梢岳斫獾氖?,此處所描述的具體實施例僅僅用于解釋相關發(fā)明,而非對該發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與有關發(fā)明相關的部分。

需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。下面將參考附圖并結合實施例來詳細說明本申請。

圖1示出了根據(jù)本申請的集群任務協(xié)調(diào)系統(tǒng)的一個實施例的示例性架構圖100。該集群任務協(xié)調(diào)系統(tǒng)可以應用本申請的集群任務協(xié)調(diào)方法和裝置。

如圖1所示,上述集群任務協(xié)調(diào)系統(tǒng)100至少可以包括集群101、zookeeper服務器102。這里,上述集群101中包括多個節(jié)點,該集群101中的各節(jié)點與zookeeper服務器102之間可以通過有線連接或無線連接的方式進行通信。

在本實施例中,上述zookeeper服務器102可以用于在上述集群101啟動時,從該集群101的全部節(jié)點中確定出一個節(jié)點作為主節(jié)點103,其余節(jié)點作為從節(jié)點104,此時上述集群101中的節(jié)點可以被分為主節(jié)點103和從節(jié)點104,如圖1所示。同時,集群101中各節(jié)點向zookeeper服務器102注冊信息,zookeeper服務器102存儲上述各節(jié)點待執(zhí)行任務的任務信息,這里的任務信息包括該節(jié)點的待執(zhí)行任務的觸發(fā)條件、任務名稱等。

在本實施例中,上述主節(jié)點103可以用于從上述zookeeper服務器102獲取其上注冊的各任務的任務信息。上述主節(jié)點103還可以用于確定上述各任務是否被觸發(fā),以及將被觸發(fā)的任務分配到對應的至少一個從節(jié)點,以使該從節(jié)點執(zhí)行上述被觸發(fā)的任務。

在本實施例的一些可選的實現(xiàn)方式中,上述主節(jié)點104還可以用于生成被觸發(fā)任務的會話,而后根據(jù)該會話確定該任務是否處理超時或失敗,若確定該任務超時或失敗,上述主節(jié)點104還可以選擇合適的策略對該任務進行下一步的處理,例如,結束該任務或是給該任務重新分配對應的從節(jié)點。

在本實施例中,上述從節(jié)點104可以用于執(zhí)行主節(jié)點103分配的任務。

需要說明的是,上述任務信息可以包括任務類型信息,其中,任務類型包括獨占任務和并行任務。當主節(jié)點103分配的任務為獨占任 務時,一個從節(jié)點104可以完成該任務;當主節(jié)點103分配的任務為并行任務時,需要多個從節(jié)點104相互配合完成該任務。

應該理解,圖1中的zookeeper服務器、集群、主節(jié)點和從節(jié)點的數(shù)目僅僅是示意性的。根據(jù)實現(xiàn)需要,可以具有任意數(shù)目的zookeeper服務器、集群、主節(jié)點和從節(jié)點,需要說明的是,一個集群只對應一個主節(jié)點。

繼續(xù)參考圖2,示出了根據(jù)本申請的集群任務協(xié)調(diào)方法的一個實施例的流程200。所述的集群任務協(xié)調(diào)方法,包括以下步驟:

步驟201,包含多個節(jié)點的集群啟動時,zookeeper服務器從集群的各節(jié)點中確定一個主節(jié)點和多個從節(jié)點。

在本實施例中,在如圖1所示的集群任務協(xié)調(diào)系統(tǒng)中的集群啟動時,zookeeper服務器可以通過有線連接方式或者無線連接方式從上述集群所有的節(jié)點中確定一個主節(jié)點,集群中的除了主節(jié)點外的其它節(jié)點均為從節(jié)點。需要指出的是,上述無線連接方式可以包括但不限于3g/4g連接、wifi連接、藍牙連接、wimax連接、zigbee連接、uwb(ultrawideband)連接、以及其他現(xiàn)在已知或?qū)黹_發(fā)的無線連接方式。

通常,當上述集群啟動時,集群中的各個節(jié)點可以在上述zookeeper服務器中注冊,此時zookeeper服務器可以為上述各節(jié)點分配唯一的編號,其中編號最小的節(jié)點可以被確定為主節(jié)點,其余節(jié)點被確定為從節(jié)點。

步驟202,各節(jié)點向zookeeper服務器注冊該節(jié)點待執(zhí)行任務的任務信息,且主節(jié)點從zookeeper服務器獲取各任務的任務信息。

在本實施例中,上述集群中的各節(jié)點包含至少一個待執(zhí)行任務,當集群啟動時,集群中的各節(jié)點(包括上述主節(jié)點和從節(jié)點)可以向上述zookeeper服務器注冊各節(jié)點所包含的待執(zhí)行任務的相關任務信息。這里的任務信息例如可以包括任務的名稱、任務的觸發(fā)條件、執(zhí)行該任務耗時的最大閾值等,這里的任務信息可以根據(jù)實際的需要進行設定。而后上述主節(jié)點可以從zookeeper服務器中獲取各節(jié)點待執(zhí)行任務的任務信息。

步驟203,當主節(jié)點根據(jù)任務信息確定第一任務被觸發(fā)時,主節(jié)點從各從節(jié)點中確定用于執(zhí)行第一任務的至少一個第一從節(jié)點。

在本實施例中,上述節(jié)點向zookeeper服務器注冊的任務信息可以包括該任務的觸發(fā)條件。基于上述各任務的觸發(fā)條件,該主節(jié)點可以確定第一任務是否被觸發(fā),其中,第一任務為在上述zookeeper服務器注冊的任意一個任務。例如,上述第一任務可以為一個每天零點執(zhí)行的定時任務,該定時任務的名稱為數(shù)據(jù)分析,觸發(fā)條件為零點,則每天零點該定時任務就會被觸發(fā),當上述主節(jié)點確定第一任務被觸發(fā)后,上述主節(jié)點可以根據(jù)上述各任務的任務信息從各從節(jié)點中獲取注冊該第一任務的至少一個節(jié)點,而后通過各種手段從中確定用于處理該第一任務的至少一個第一從節(jié)點,這里所確定的第一從節(jié)點即為執(zhí)行上述第一任務的節(jié)點。

在本實施例的一些可選的實現(xiàn)方式中,通常可以存在多個節(jié)點向zookeeper服務器注冊上述第一任務。當該第一任務被處觸發(fā)時,主節(jié)點可以根據(jù)注冊上述第一任務的各節(jié)點的負載等選擇用于執(zhí)行該第一任務的一個或多個第一從節(jié)點。

步驟204,主節(jié)點向第一從節(jié)點分配第一任務。

在本實施例中,上述主節(jié)點基于步驟203確定的用于處理上述第一任務的一個或多個第一從節(jié)點,其可以向上述第一從節(jié)點分配第一任務。

在本實施例的一些可選的實現(xiàn)方式中,當上述第一任務處理超時或失敗時,上述主節(jié)點可以繼續(xù)選擇用于執(zhí)行該第一任務的至少一個第二從節(jié)點,并向第二從節(jié)點分配上述第一任務?;蛘撸斏鲜龅谝蝗蝿仗幚沓瑫r或失敗時,直接結束該第一任務。

在本實施例的一些可選的實現(xiàn)方式中,向zookeeper服務器注冊上述第一任務的節(jié)點可以包括主節(jié)點,因此,用于執(zhí)行上述第一任務的節(jié)點可以是主節(jié)點和/或從節(jié)點。

本申請的上述實施例提供的方法,利用zookeeper服務器在集群中確定主節(jié)點,并存儲集群中各節(jié)點注冊到其上的任務信息,使得主節(jié)點在各任務被觸發(fā)而為各任務分配執(zhí)行節(jié)點時可以具有多個選擇, 避免了單點風險,實現(xiàn)了對集群中各任務的協(xié)調(diào)處理。

繼續(xù)參考圖3,其示出了本申請集群任務協(xié)調(diào)方法的又一實施例的示意性流程圖300,該集群任務協(xié)調(diào)方法的流程300,包括以下步驟:

步驟301,包含多個節(jié)點的集群啟動時,zookeeper服務器從集群的各節(jié)點中確定一個主節(jié)點和多個從節(jié)點。

在本實施例中,在如圖1所示的集群任務協(xié)調(diào)系統(tǒng)中的集群啟動時,zookeeper服務可以通過有線連接方式或者無線連接方式從上述集群所有的節(jié)點中確定一個主節(jié)點,集群中的除了主節(jié)點外其它的節(jié)點均為從節(jié)點。

步驟302,各節(jié)點向zookeeper服務器注冊該節(jié)點待執(zhí)行任務的任務信息,且主節(jié)點從zookeeper服務器獲取各任務的任務信息。

上述集群中的各節(jié)點包含至少一個待執(zhí)行任務,當集群啟動時,集群中的各節(jié)點(包括上述主節(jié)點和從節(jié)點)可以向上述zookeeper服務器注冊各節(jié)點所包含的待執(zhí)行任務的相關任務信息。這里的任務信息包括任務的名稱、任務的觸發(fā)條件、執(zhí)行該任務耗時的最大閾值等,這里的任務信息可以根據(jù)實際的需要進行設定。而后上述主節(jié)點可以從zookeeper服務器中獲取各節(jié)點待執(zhí)行任務的任務信息。

步驟303,當主節(jié)點根據(jù)任務信息確定第一任務被觸發(fā)時,主節(jié)點生成第一任務的會話。

在本實施例中,上述主節(jié)點基于步驟202中獲取的各節(jié)點待執(zhí)行任務的任務信息,該主節(jié)點可以確定第一任務是否被觸發(fā),其中,第一任務為在上述zookeeper服務器注冊的任意一個任務。當上述第一任務被觸發(fā)時,在上述主節(jié)點中可以生成該第一任務對應的會話,該會話可以用于監(jiān)控第一任務的處理進程,其中可以包含該第一任務的相關信息,如用于執(zhí)行該第一任務的節(jié)點編號、該第一任務的耗時長度等?;蛘?,上述會話也可以認為是針對第一任務生成的任務日志。

步驟304,若第一任務為獨占任務,則主節(jié)點從各從節(jié)點中確定用于執(zhí)行第一任務的一個第一從節(jié)點。

在本實施例中,上述節(jié)點向zookeeper服務器注冊的任務信息還包括任務類型信息,這里的任務類型包括獨占任務和并行任務。即上 述各節(jié)點中的待執(zhí)行任務可以包括獨占任務和并行任務,其中,并行任務中可以包括多個子任務。因此,上述主節(jié)點可以首先判斷上述第一任務的任務類型,若該第一任務為獨占任務時,則上述主節(jié)點可以從各從節(jié)點中確定用于執(zhí)行該第一任務的一個第一從節(jié)點。

需要說明的是,通常向上述zookeeper服務器注冊上述第一任務的節(jié)點可以包括主節(jié)點和多個從節(jié)點,如果基于負載均衡考慮,在上述主節(jié)點和多個從節(jié)點中該主節(jié)點的負載最小,則可以確定該主節(jié)點為執(zhí)行上述第一任務的節(jié)點。

步驟305,若第一任務為并行任務,則第一任務包含多個子任務,主節(jié)點從各從節(jié)點中確定用于執(zhí)行各子任務的多個第一從節(jié)點。

在本實施例中,若上述主節(jié)點判斷出上述第一任務的任務類型為并行任務,則可以確定該第一任務包含多個子任務,上述主節(jié)點可以從各從節(jié)點中確定用于執(zhí)行上述各子任務的多個第一從節(jié)點。

需要說明的是,向上述zookeeper服務器注冊上述第一任務中各子任務的節(jié)點可以包括主節(jié)點和多個從節(jié)點,如果基于負載均衡考慮,在上述主節(jié)點和多個從節(jié)點中該主節(jié)點的負載最小,則可以確定該主節(jié)點為執(zhí)行對應的上述子任務的節(jié)點。

步驟306,主節(jié)點向第一從節(jié)點分配該第一任務。

在本實施例中,當上述第一任務為獨占任務,主節(jié)點確定用于執(zhí)行該第一任務的一個第一從節(jié)點時,上述主節(jié)點將該獨占任務分配給該第一從節(jié)點,以使該第一從節(jié)點執(zhí)行該第一任務;當上述第一任務為包括多個子任務的并行任務,主節(jié)點確定用于執(zhí)行該第一任務的多個第一從節(jié)點時,上述主節(jié)點將各子任務分配給對應的第一從節(jié)點,以使各第一從節(jié)點并列執(zhí)行該第一任務。

在本實施例的一些可選的實現(xiàn)方式中,上述主節(jié)點還可以基于上述生成的第一任務的會話確定該第一任務的耗時長度,而后將該耗時長度與第一任務對應的任務信息中的任務耗時最大閾值對比,如果第一任務的耗時長度大于該第一任務耗時最大閾值,則在上述會話中標記該第一任務超時。

本實施例的一些可選的實現(xiàn)方式中,當上述第一任務超時或失敗 時,主節(jié)點可以繼續(xù)確定用于執(zhí)行該第一任務的至少一個第二從節(jié)點,而后將該第一任務分配給上述第二從節(jié)點。

本申請的上述實施例提供的方法,通過采用zookeeper框架使得集群任務的協(xié)調(diào)不依賴數(shù)據(jù)庫,并且該方法既能滿足獨占任務的協(xié)調(diào)又能滿足并行任務的協(xié)調(diào)。

進一步參考圖4,作為對上述各圖所示方法的實現(xiàn),本申請?zhí)峁┝艘环N集群任務協(xié)調(diào)裝置的一個實施例,該裝置實施例與圖2所示的方法實施例相對應,該裝置具體可以應用于各種電子設備中。

如圖4所示,本實施例所述的集群任務協(xié)調(diào)裝置400包括:主從節(jié)點確定模塊401、任務信息注冊模塊402、第一從節(jié)點確定模塊403和第一任務分配模塊404。其中,主從節(jié)點確定模塊401配置用于包含多個節(jié)點的集群啟動時,zookeeper服務器從該集群的各節(jié)點中確定一個主節(jié)點和多個從節(jié)點;任務信息注冊模塊402配置用于各節(jié)點向上述zookeeper服務器注冊該節(jié)點待執(zhí)行任務的任務信息,且上述主節(jié)點從zookeeper服務器獲取各任務的任務信息,其中,任務信息包括該節(jié)點待執(zhí)行任務的觸發(fā)條件;第一從節(jié)點確定模塊403配置用于當上述主節(jié)點根據(jù)上述任務信息確定第一任務被觸發(fā)時,主節(jié)點從各從節(jié)點中確定用于執(zhí)行上述第一任務的至少一個第一從節(jié)點,其中,第一任務為在上述zookeeper服務器注冊的任意一個任務;第一任務分配模塊404配置用于主節(jié)點向上述第一從節(jié)點分配上述第一任務。

在本實施例的一些可選的實現(xiàn)方式中,上述節(jié)點向zookeeper服務器注冊的任務信息還包括任務類型信息,這里的任務類型包括獨占任務和并行任務。上述第一從節(jié)點確定模塊403配置具體用于:若上述第一任務為獨占任務,則上述主節(jié)點從各從節(jié)點中確定用于執(zhí)行該第一任務的一個第一從節(jié)點;若上述第一任務為并行任務,則第一任務包含多個子任務,上述主節(jié)點從各從節(jié)點中確定用于執(zhí)行各子任務的多個第一從節(jié)點。

在本實施例的一些可選的實現(xiàn)方式中,上述集群任務協(xié)調(diào)裝置400還包括:會話生成模塊(未示出)配置用于當上述主節(jié)點根據(jù)任務信息確定第一任務被觸發(fā)時,該主節(jié)點生成該第一任務的會話,其 中,會話用于監(jiān)控第一任務的處理進程。

在本實施例的一些可選的實現(xiàn)方式中,上述任務信息還包括該節(jié)點待執(zhí)行任務耗時最大閾值;上述集群任務協(xié)調(diào)裝置400還包括:超時標記模塊(未示出)配置具體用于基于上述第一任務的會話,上述主節(jié)點獲取所述第一任務的耗時長度;當?shù)谝蝗蝿盏暮臅r長度大于該第一任務耗時最大閾值時,上述會話標記第一任務超時。

在本實施例的一些可選的實現(xiàn)方式中,上述集群任務協(xié)調(diào)裝置400還包括第二從節(jié)點確定模塊(未示出):配置用于當上述第一任務超時或失敗時,上述主節(jié)點確定用于執(zhí)行該第一任務的至少一個第二從節(jié)點;以及該主節(jié)點向第二從節(jié)點分配上述第一任務。

本領域技術人員可以理解,上述集群任務協(xié)調(diào)裝置400還包括一些其他公知結構,例如處理器、存儲器等,為了不必要地模糊本公開的實施例,這些公知的結構在圖4中未示出。

下面參考圖5,其示出了適于用來實現(xiàn)本申請實施例的終端設備或服務器的計算機系統(tǒng)500的結構示意圖。

如圖5所示,計算機系統(tǒng)500包括中央處理單元(cpu)501,其可以根據(jù)存儲在只讀存儲器(rom)502中的程序或者從存儲部分508加載到隨機訪問存儲器(ram)503中的程序而執(zhí)行各種適當?shù)膭幼骱吞幚?。在ram503中,還存儲有系統(tǒng)500操作所需的各種程序和數(shù)據(jù)。cpu501、rom502以及ram503通過總線504彼此相連。輸入/輸出(i/o)接口505也連接至總線504。

以下部件連接至i/o接口505:包括鍵盤、鼠標等的輸入部分506;包括諸如陰極射線管(crt)、液晶顯示器(lcd)等以及揚聲器等的輸出部分507;包括硬盤等的存儲部分508;以及包括諸如lan卡、調(diào)制解調(diào)器等的網(wǎng)絡接口卡的通信部分509。通信部分509經(jīng)由諸如因特網(wǎng)的網(wǎng)絡執(zhí)行通信處理。驅(qū)動器510也根據(jù)需要連接至i/o接口505。可拆卸介質(zhì)511,諸如磁盤、光盤、磁光盤、半導體存儲器等等,根據(jù)需要安裝在驅(qū)動器510上,以便于從其上讀出的計算機程序根據(jù)需要被安裝入存儲部分508。

特別地,根據(jù)本公開的實施例,上文參考流程圖描述的過程可以 被實現(xiàn)為計算機軟件程序。例如,本公開的實施例包括一種計算機程序產(chǎn)品,其包括有形地包含在機器可讀介質(zhì)上的計算機程序,所述計算機程序包含用于執(zhí)行流程圖所示的方法的程序代碼。在這樣的實施例中,該計算機程序可以通過通信部分509從網(wǎng)絡上被下載和安裝,和/或從可拆卸介質(zhì)511被安裝。

附圖中的流程圖和框圖,圖示了按照本申請各種實施例的系統(tǒng)、方法和計算機程序產(chǎn)品的可能實現(xiàn)的體系架構、功能和操作。在這點上,流程圖或框圖中的每個方框可以代表一個模塊、程序段、或代碼的一部分,所述模塊、程序段、或代碼的一部分包含一個或多個用于實現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應當注意,在有些作為替換的實現(xiàn)中,方框中所標注的功能也可以以不同于附圖中所標注的順序發(fā)生。例如,兩個接連地表示的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或操作的專用的基于硬件的系統(tǒng)來實現(xiàn),或者可以用專用硬件與計算機指令的組合來實現(xiàn)。

描述于本申請實施例中所涉及到的模塊可以通過軟件的方式實現(xiàn),也可以通過硬件的方式來實現(xiàn)。所描述的模塊也可以設置在處理器中,例如,可以描述為:一種處理器包括主從節(jié)點確定模塊、任務信息注冊模塊、第一從節(jié)點確定模塊和第一任務分配模塊。其中,這些模塊的名稱在某種情況下并不構成對該模塊本身的限定,例如,主從節(jié)點確定模塊還可以被描述為“包含多個節(jié)點的集群啟動時,zookeeper服務器從所述集群的各所述節(jié)點中確定一個主節(jié)點和多個從節(jié)點的模塊”。

作為另一方面,本申請還提供了一種非易失性計算機存儲介質(zhì),該非易失性計算機存儲介質(zhì)可以是上述實施例中所述裝置中所包含的非易失性計算機存儲介質(zhì);也可以是單獨存在,未裝配入終端中的非易失性計算機存儲介質(zhì)。上述非易失性計算機存儲介質(zhì)存儲有一個或者多個程序,當所述一個或者多個程序被一個設備執(zhí)行時,使得所述設備:包含多個節(jié)點的集群啟動時,zookeeper服務器從所述集群的各 所述節(jié)點中確定一個主節(jié)點和多個從節(jié)點;各所述節(jié)點向所述zookeeper服務器注冊該節(jié)點待執(zhí)行任務的任務信息,且所述主節(jié)點從所述zookeeper服務器獲取各所述任務的任務信息,其中,所述任務信息包括該節(jié)點待執(zhí)行任務的觸發(fā)條件;當所述主節(jié)點根據(jù)所述任務信息確定第一任務被觸發(fā)時,所述主節(jié)點從各所述從節(jié)點中確定用于執(zhí)行所述第一任務的至少一個第一從節(jié)點,其中,所述第一任務為在所述zookeeper服務器注冊的任意一個任務;所述主節(jié)點向所述第一從節(jié)點分配所述第一任務。

以上描述僅為本申請的較佳實施例以及對所運用技術原理的說明。本領域技術人員應當理解,本申請中所涉及的發(fā)明范圍,并不限于上述技術特征的特定組合而成的技術方案,同時也應涵蓋在不脫離所述發(fā)明構思的情況下,由上述技術特征或其等同特征進行任意組合而形成的其它技術方案。例如上述特征與本申請中公開的(但不限于)具有類似功能的技術特征進行互相替換而形成的技術方案。

當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
咸阳市| 荔浦县| 万州区| 镇宁| 花莲市| 增城市| 横峰县| 青川县| 玛曲县| 香港| 闻喜县| 云南省| 公主岭市| 镇安县| 玉林市| 吴桥县| 石家庄市| 桂林市| 钦州市| 武山县| 漳浦县| 连山| 凤台县| 兰溪市| 清水河县| 惠安县| 崇明县| 奉化市| 金华市| 铜梁县| 定南县| 从化市| 马尔康县| 全南县| 定兴县| 永修县| 双鸭山市| 丰宁| 洪洞县| 惠安县| 团风县|