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

一種集群中任務(wù)線程運(yùn)行的監(jiān)控方法、裝置及系統(tǒng)與流程

文檔序號(hào):12818817閱讀:314來源:國知局
一種集群中任務(wù)線程運(yùn)行的監(jiān)控方法、裝置及系統(tǒng)與流程

本申請(qǐng)涉及互聯(lián)網(wǎng)通信技術(shù)領(lǐng)域,特別涉及一種集群中任務(wù)線程運(yùn)行的監(jiān)控方法、裝置及系統(tǒng)。



背景技術(shù):

隨著互聯(lián)網(wǎng)通信技術(shù)的日新月異,一些大型的互聯(lián)網(wǎng)系統(tǒng),由于業(yè)務(wù)復(fù)雜等原因,會(huì)出現(xiàn)大集群環(huán)境下多任務(wù)線程運(yùn)行的場景。一般任務(wù)線程運(yùn)行后,都需要一段較長時(shí)間來進(jìn)行業(yè)務(wù)處理,監(jiān)聽服務(wù)器需要保證在該時(shí)間內(nèi)各任務(wù)線程穩(wěn)定的運(yùn)行。

現(xiàn)有技術(shù)中為保證大集群環(huán)境下各任務(wù)線程穩(wěn)定運(yùn)行采取的監(jiān)控方法主要包括兩種:一種是收集報(bào)告模式,另一種是主動(dòng)回查模式。在收集報(bào)告模式中需要將每一個(gè)任務(wù)線程的狀態(tài)報(bào)告給監(jiān)聽服務(wù)器,當(dāng)監(jiān)聽服務(wù)器在收集到某個(gè)任務(wù)線程的任務(wù)失敗狀態(tài)報(bào)告時(shí)將重啟所述任務(wù)線程的任務(wù)副本來保證任務(wù)線程穩(wěn)定的運(yùn)行。在主動(dòng)回查模式中每個(gè)任務(wù)線程都需要在監(jiān)聽服務(wù)器上進(jìn)行注冊(cè),這樣監(jiān)聽服務(wù)器可以按照一定周期進(jìn)行逐個(gè)任務(wù)線程查詢,通過回查模式獲取任務(wù)線程的任務(wù)狀態(tài),根據(jù)查詢?nèi)蝿?wù)狀態(tài)來確定是否重啟任務(wù)線程的任務(wù)副本來保證任務(wù)線程穩(wěn)定的運(yùn)行。但現(xiàn)有技術(shù)的所述收集報(bào)告模式的監(jiān)控方法中會(huì)由于網(wǎng)絡(luò)問題或者機(jī)器宕機(jī)的情況導(dǎo)致任務(wù)狀態(tài)不能順利報(bào)告給監(jiān)聽服務(wù)器,監(jiān)聽服務(wù)器只能根據(jù)一段時(shí)間沒有收到任務(wù)狀態(tài)報(bào)告的規(guī)則來重啟任務(wù)線程的任務(wù)副本;所述主動(dòng)回查模式的監(jiān)控方法中也受限于機(jī)器、網(wǎng)絡(luò)的因素?zé)o法準(zhǔn)確的獲取任務(wù)狀態(tài),所以也只能根據(jù)預(yù)設(shè)數(shù)量次的回查次數(shù)內(nèi)未查到任務(wù)狀態(tài)的條件來重啟任務(wù)線程的副本。

因此,現(xiàn)有的上述兩種監(jiān)控方法中均無法準(zhǔn)確獲取任務(wù)狀態(tài),會(huì)出現(xiàn)任務(wù)沒有消亡卻盲目的重啟任務(wù)線程的任務(wù)副本的情況,造成因所述任務(wù)線程重復(fù)啟動(dòng)的長時(shí)間并發(fā)報(bào)錯(cuò),導(dǎo)致較大的監(jiān)控開發(fā)成本和系統(tǒng)風(fēng)險(xiǎn)。



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

本申請(qǐng)實(shí)施例的目的是提供一種集群中任務(wù)線程運(yùn)行的監(jiān)控方法、裝置及系統(tǒng),可以保證大集群環(huán)境下各任務(wù)線程穩(wěn)定運(yùn)行,提高系統(tǒng)穩(wěn)定性,降低系統(tǒng)風(fēng)險(xiǎn)。

為解決上述技術(shù)問題,本申請(qǐng)實(shí)施例提供一種集群中任務(wù)線程運(yùn)行的監(jiān)控方法、裝置及 系統(tǒng)是這樣實(shí)現(xiàn)的:

一種集群中任務(wù)線程運(yùn)行的監(jiān)控方法,所述方法包括:

集群中的任務(wù)服務(wù)器基于心跳時(shí)間關(guān)聯(lián)通道以第一預(yù)設(shè)時(shí)間為周期在數(shù)據(jù)庫中更新存儲(chǔ)任務(wù)線程的當(dāng)前心跳時(shí)間信息;

所述集群中的監(jiān)聽服務(wù)器以第二預(yù)設(shè)時(shí)間為周期獲取所述數(shù)據(jù)庫中任務(wù)線程的當(dāng)前心跳時(shí)間信息;

所述監(jiān)聽服務(wù)器計(jì)算所述任務(wù)線程的當(dāng)前心跳時(shí)間信息與所述第一預(yù)設(shè)時(shí)間的時(shí)間之和,比較所述時(shí)間之和與當(dāng)前時(shí)間的大??;

所述監(jiān)聽服務(wù)器根據(jù)所述比較的結(jié)果控制所述集群中任務(wù)線程的運(yùn)行。

一種集群中任務(wù)線程運(yùn)行的監(jiān)控方法,所述方法包括:

以第二預(yù)設(shè)時(shí)間為周期獲取所述數(shù)據(jù)庫中任務(wù)線程的當(dāng)前心跳時(shí)間信息;

計(jì)算所述任務(wù)線程的當(dāng)前心跳時(shí)間信息與任務(wù)服務(wù)器在數(shù)據(jù)庫中更新存儲(chǔ)所述任務(wù)線程的當(dāng)前心跳時(shí)間信息對(duì)應(yīng)周期的第一預(yù)設(shè)時(shí)間的時(shí)間之和,比較所述時(shí)間之和與當(dāng)前時(shí)間的大小;

根據(jù)所述比較的結(jié)果控制所述集群中任務(wù)線程的運(yùn)行。

一種集群中任務(wù)線程運(yùn)行的監(jiān)控方法,所述方法包括:

在監(jiān)聽服務(wù)器啟動(dòng)任務(wù)線程時(shí),檢查所述任務(wù)線程是否與所述數(shù)據(jù)庫之間建立了心跳時(shí)間關(guān)聯(lián)通道;

當(dāng)所述檢查的結(jié)果為是時(shí),基于心跳時(shí)間關(guān)聯(lián)通道以第一預(yù)設(shè)時(shí)間為周期在數(shù)據(jù)庫中更新存儲(chǔ)任務(wù)線程的當(dāng)前心跳時(shí)間信息。

一種集群中任務(wù)線程運(yùn)行的監(jiān)控裝置,所述裝置包括:

心跳時(shí)間信息獲取模塊,用于以第二預(yù)設(shè)時(shí)間為周期獲取所述數(shù)據(jù)庫中任務(wù)線程的當(dāng)前心跳時(shí)間信息;

數(shù)據(jù)計(jì)算模塊,用于計(jì)算所述任務(wù)線程的當(dāng)前心跳時(shí)間信息與任務(wù)服務(wù)器在數(shù)據(jù)庫中更新存儲(chǔ)所述任務(wù)線程的當(dāng)前心跳時(shí)間信息對(duì)應(yīng)周期的第一預(yù)設(shè)時(shí)間的時(shí)間之和;

數(shù)據(jù)比較模塊,用于比較所述數(shù)據(jù)計(jì)算模塊計(jì)算得到的時(shí)間之和與當(dāng)前時(shí)間的大?。?/p>

任務(wù)線程運(yùn)行控制模塊,用于根據(jù)所述數(shù)據(jù)比較模塊比較的結(jié)果控制所述集群中任務(wù)線程的運(yùn)行。

一種集群中任務(wù)線程運(yùn)行的監(jiān)控裝置,所述裝置包括:

檢查模塊,用于在監(jiān)聽服務(wù)器啟動(dòng)任務(wù)線程時(shí),檢查所述任務(wù)線程是否與所述數(shù)據(jù)庫之間建立了心跳時(shí)間關(guān)聯(lián)通道;

心跳時(shí)間信息更新模塊,用于當(dāng)所述檢查模塊的檢查結(jié)果為是時(shí),基于心跳時(shí)間關(guān)聯(lián)通道以第一預(yù)設(shè)時(shí)間為周期在數(shù)據(jù)庫中更新存儲(chǔ)任務(wù)線程的當(dāng)前心跳時(shí)間信息。

一種集群中任務(wù)線程運(yùn)行的監(jiān)控系統(tǒng),所述系統(tǒng)包括:

監(jiān)聽服務(wù)器,用于以第二預(yù)設(shè)時(shí)間為周期獲取所述數(shù)據(jù)庫中任務(wù)線程的當(dāng)前心跳時(shí)間信息;以及用于計(jì)算所述任務(wù)線程的當(dāng)前心跳時(shí)間信息與任務(wù)服務(wù)器在數(shù)據(jù)庫中更新存儲(chǔ)所述任務(wù)線程的當(dāng)前心跳時(shí)間信息對(duì)應(yīng)周期的第一預(yù)設(shè)時(shí)間的時(shí)間之和,比較所述時(shí)間之和與當(dāng)前時(shí)間的大??;以及用于根據(jù)所述比較的結(jié)果控制所述集群中任務(wù)線程的運(yùn)行;

任務(wù)服務(wù)器,用于在監(jiān)聽服務(wù)器啟動(dòng)任務(wù)線程時(shí),檢查所述任務(wù)線程是否與所述數(shù)據(jù)庫之間建立了心跳時(shí)間關(guān)聯(lián)通道;以及用于當(dāng)所述檢查的結(jié)果為是時(shí),基于心跳時(shí)間關(guān)聯(lián)通道以第一預(yù)設(shè)時(shí)間為周期在數(shù)據(jù)庫中更新存儲(chǔ)任務(wù)線程的當(dāng)前心跳時(shí)間信息;

數(shù)據(jù)庫,用于存儲(chǔ)集群中任務(wù)線程的當(dāng)前心跳時(shí)間信息。

本申請(qǐng)實(shí)施例中任務(wù)服務(wù)器基于心跳時(shí)間關(guān)聯(lián)通道將任務(wù)線程的當(dāng)前心跳時(shí)間信息以第一預(yù)設(shè)時(shí)間為周期在數(shù)據(jù)庫中更新存儲(chǔ),監(jiān)聽服務(wù)器從所述數(shù)據(jù)庫中獲取任務(wù)線程的當(dāng)前心跳時(shí)間信息之后,計(jì)算出當(dāng)前心跳時(shí)間信息與所述第一預(yù)設(shè)時(shí)間的時(shí)間之和,并通過比較所述時(shí)間之和與當(dāng)前時(shí)間的大小的方式判斷當(dāng)前任務(wù)線程是否正常運(yùn)行。最后,根據(jù)比較的結(jié)果可以有效的控制所述集群中任務(wù)線程的運(yùn)行。與現(xiàn)有技術(shù)相比,利用本申請(qǐng)實(shí)施例可以無需直接依賴任務(wù)線程的任務(wù)狀態(tài),直接判斷出任務(wù)線程是否正常運(yùn)行,有效提高系統(tǒng)穩(wěn)定性,降低系統(tǒng)風(fēng)險(xiǎn)。

附圖說明

為了更清楚地說明本申請(qǐng)實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請(qǐng)中記載的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1是本申請(qǐng)?zhí)峁┑募褐腥蝿?wù)線程運(yùn)行的監(jiān)控方法的一種實(shí)施例的流程示意圖;

圖2是本申請(qǐng)?zhí)峁┑募褐腥蝿?wù)線程運(yùn)行的監(jiān)控方法的另一種實(shí)施例的流程示意圖;

圖3是本申請(qǐng)?zhí)峁┑募褐腥蝿?wù)線程運(yùn)行的監(jiān)控方法的另一種實(shí)施例的流程示意圖;

圖4是本申請(qǐng)?zhí)峁┑募褐腥蝿?wù)線程運(yùn)行的監(jiān)控裝置的一種實(shí)施例的結(jié)構(gòu)示意圖;

圖5是本申請(qǐng)?zhí)峁┑乃鋈蝿?wù)線程運(yùn)行控制模塊一種實(shí)施例的模塊示意圖;

圖6是本申請(qǐng)?zhí)峁┑募褐腥蝿?wù)線程運(yùn)行的監(jiān)控裝置的另一種實(shí)施例的結(jié)構(gòu)示意圖;

圖7是本申請(qǐng)?zhí)峁┑募褐腥蝿?wù)線程運(yùn)行的監(jiān)控裝置的另一種實(shí)施例的結(jié)構(gòu)示意圖;

圖8是本申請(qǐng)?zhí)峁┑募褐腥蝿?wù)線程運(yùn)行的監(jiān)控裝置的另一種實(shí)施例的結(jié)構(gòu)示意圖;

圖9是本申請(qǐng)?zhí)峁┑募褐腥蝿?wù)線程運(yùn)行的監(jiān)控系統(tǒng)的一種實(shí)施例的結(jié)構(gòu)示意圖。

具體實(shí)施方式

為了使本技術(shù)領(lǐng)域的人員更好地理解本申請(qǐng)中的技術(shù)方案,下面將結(jié)合本申請(qǐng)實(shí)施例中的附圖,對(duì)本申請(qǐng)實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本申請(qǐng)一部分實(shí)施例,而不是全部的實(shí)施例。基于本申請(qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本申請(qǐng)保護(hù)的范圍。

以下以幾個(gè)具體的例子詳細(xì)說明本申請(qǐng)實(shí)施例的具體實(shí)現(xiàn)。

以下首先介紹本申請(qǐng)一種集群中任務(wù)線程運(yùn)行的監(jiān)控方法的一種實(shí)施例。圖1是本申請(qǐng)?zhí)峁┑募褐腥蝿?wù)線程運(yùn)行的監(jiān)控方法的一種實(shí)施例的流程示意圖,本申請(qǐng)?zhí)峁┝巳鐚?shí)施例或流程圖所述的方法操作步驟,但基于常規(guī)或者無創(chuàng)造性的勞動(dòng)可以包括更多或者更少的操作步驟。實(shí)施例中列舉的步驟順序僅僅為眾多步驟執(zhí)行順序中的一種方式,不代表唯一的執(zhí)行順序。在實(shí)際中的系統(tǒng)或客戶端產(chǎn)品執(zhí)行時(shí),可以按照實(shí)施例或者附圖所示的方法順序執(zhí)行或者并行執(zhí)行(例如并行處理器或者多線程處理的環(huán)境)。具體的如圖1所示,所述方法可以包括:

s110:集群中的任務(wù)服務(wù)器基于心跳時(shí)間關(guān)聯(lián)通道以第一預(yù)設(shè)時(shí)間為周期在數(shù)據(jù)庫中更新存儲(chǔ)任務(wù)線程的當(dāng)前心跳時(shí)間信息。

在本申請(qǐng)實(shí)施例中,集群中的任務(wù)服務(wù)器可以基于心跳時(shí)間關(guān)聯(lián)通道以第一預(yù)設(shè)時(shí)間為周期在數(shù)據(jù)庫中更新存儲(chǔ)任務(wù)線程的當(dāng)前心跳時(shí)間信息。在實(shí)際應(yīng)用中,一般所述集群中可以包括多個(gè)任務(wù)線程對(duì)應(yīng)的任務(wù)服務(wù)器,以及監(jiān)控所述多個(gè)任務(wù)線程的監(jiān)聽服務(wù)器。具體的,所述任務(wù)服務(wù)器可以包括客戶端,也可以包括控制多個(gè)任務(wù)線程的服務(wù)器。具體的,所述第一預(yù)設(shè)時(shí)間可以根據(jù)實(shí)際應(yīng)用情況設(shè)置,一般的,所述第一預(yù)設(shè)時(shí)間可以小于任務(wù)線程運(yùn)行處理時(shí)間。具體的,所述心跳時(shí)間關(guān)聯(lián)通道與相應(yīng)的運(yùn)行中的任務(wù)線程一一對(duì)應(yīng)。當(dāng)任務(wù)線程與數(shù)據(jù)庫建立了心跳時(shí)間關(guān)聯(lián)通道之后,可以保證將所述任務(wù)線程的心跳時(shí)間信息存儲(chǔ)到數(shù)據(jù)庫中。具體的,所述當(dāng)前心跳時(shí)間信息可以是任務(wù)線程在運(yùn)行期間所述任務(wù)服務(wù)器存儲(chǔ) 到數(shù)據(jù)庫中的當(dāng)前時(shí)間信息。例如,任務(wù)線程a正在運(yùn)行,且距離上次在數(shù)據(jù)庫中更新存儲(chǔ)當(dāng)前心跳時(shí)間信息已達(dá)到所述第一預(yù)設(shè)時(shí)間,那么任務(wù)服務(wù)器可以將所述任務(wù)線程a的當(dāng)前時(shí)間信息存儲(chǔ)到數(shù)據(jù)庫中作為當(dāng)前心跳時(shí)間信息。

進(jìn)一步的,在實(shí)際應(yīng)用中,當(dāng)需要進(jìn)行業(yè)務(wù)處理時(shí),集群中可以為所述業(yè)務(wù)分配相應(yīng)的任務(wù)線程,相應(yīng)的,所述方法還可以包括:

所述監(jiān)聽服務(wù)器啟動(dòng)所述集群中的任務(wù)線程,并分別建立所述集群中的任務(wù)線程與所述數(shù)據(jù)庫之間的心跳時(shí)間關(guān)聯(lián)通道。

具體的,一般一個(gè)任務(wù)線程只可以與所述數(shù)據(jù)庫建立一條心跳時(shí)間關(guān)聯(lián)通道。當(dāng)任務(wù)線程與所述數(shù)據(jù)庫建立了心跳時(shí)間關(guān)聯(lián)通道,基于所述心跳時(shí)間關(guān)聯(lián)通道所述任務(wù)線程在運(yùn)行期間就可以在所述數(shù)據(jù)庫中更新存儲(chǔ)當(dāng)前心跳時(shí)間信息。相應(yīng)的,所述方法還可以包括:

所述任務(wù)服務(wù)器在任務(wù)線程啟動(dòng)時(shí),檢查所述任務(wù)線程是否與所述數(shù)據(jù)庫之間建立了心跳時(shí)間關(guān)聯(lián)通道;

當(dāng)所述檢查的結(jié)果為是時(shí),所述任務(wù)服務(wù)器基于所述心跳時(shí)間關(guān)聯(lián)通道執(zhí)行以第一預(yù)設(shè)時(shí)間為周期在數(shù)據(jù)庫中更新存儲(chǔ)所述任務(wù)線程的當(dāng)前心跳時(shí)間信息的操作。

相應(yīng)的,所述方法還可以包括:

當(dāng)所述檢查的結(jié)果為否時(shí),停止所述任務(wù)線程當(dāng)前任務(wù)的運(yùn)行。

上述通過在任務(wù)線程啟動(dòng)運(yùn)行時(shí),檢查所述任務(wù)線程是否與所述數(shù)據(jù)庫之間建立了心跳時(shí)間關(guān)聯(lián)通道可以保證當(dāng)任務(wù)線程自身占有相應(yīng)的心跳時(shí)間關(guān)聯(lián)通道時(shí),可以繼續(xù)進(jìn)行業(yè)務(wù)處理;一旦自身沒有相應(yīng)的心跳時(shí)間關(guān)聯(lián)通道時(shí),所述任務(wù)服務(wù)器可以停止當(dāng)前任務(wù)的運(yùn)行。這樣同一業(yè)務(wù)的任務(wù)線程間也存在了互斥性,可以避免了任務(wù)沒有消亡卻盲目的重啟任務(wù)線程的任務(wù)副本的情況,解決了因所述任務(wù)線程重復(fù)啟動(dòng)的長時(shí)間并發(fā)報(bào)錯(cuò)。

s120:所述集群中的監(jiān)聽服務(wù)器以第二預(yù)設(shè)時(shí)間為周期獲取所述數(shù)據(jù)庫中任務(wù)線程的當(dāng)前心跳時(shí)間信息。

本申請(qǐng)實(shí)施例中,在步驟s110之后,所述集群中的監(jiān)聽服務(wù)器可以以第二預(yù)設(shè)時(shí)間為周期獲取所述數(shù)據(jù)庫中任務(wù)線程的當(dāng)前心跳時(shí)間信息。具體的,所述第二預(yù)設(shè)時(shí)間可以根據(jù)實(shí)際應(yīng)用情況設(shè)置,具體的,所述第二預(yù)設(shè)時(shí)間可以小于等于所述第一預(yù)設(shè)時(shí)間。例如,所述第一預(yù)設(shè)時(shí)間為30s時(shí),所述第二預(yù)設(shè)時(shí)間可以為25s。

具體的,本申請(qǐng)實(shí)施例所述監(jiān)聽服務(wù)器可以通過數(shù)據(jù)庫的api(applicationprogramminginterface,應(yīng)用程序編程接口)接口訪問數(shù)據(jù)庫,獲取任務(wù)線程的當(dāng)前心跳時(shí)間信息。這里通過api接口進(jìn)行訪問可以有效避免網(wǎng)絡(luò)問題導(dǎo)致的數(shù)據(jù)通信問題。

s130:所述監(jiān)聽服務(wù)器計(jì)算所述任務(wù)線程的當(dāng)前心跳時(shí)間信息與所述第一預(yù)設(shè)時(shí)間的時(shí)間之和,比較所述時(shí)間之和與當(dāng)前時(shí)間的大小。

本申請(qǐng)實(shí)施例中,在步驟s120之后,所述監(jiān)聽服務(wù)器可以計(jì)算所述任務(wù)線程的當(dāng)前心跳時(shí)間信息與所述第一預(yù)設(shè)時(shí)間的時(shí)間之和,比較所述時(shí)間之和與當(dāng)前時(shí)間的大小。具體的,例如任務(wù)線程a在數(shù)據(jù)庫中的最近一次更新存儲(chǔ)的當(dāng)前心跳時(shí)間信息09:32:10,可以表示為time_heartbeat=9*3600+32*60+10,假設(shè)第一預(yù)設(shè)時(shí)間為25s,可以表示為time_first=25*60,那么可以計(jì)算得到所述任務(wù)線程a的當(dāng)前心跳時(shí)間信息與所述第一預(yù)設(shè)時(shí)間的時(shí)間之和09:32:35,可以表示為time_heartbeat+time_first=9*3600+32*60+35。

具體的,當(dāng)計(jì)算得到任務(wù)線程的當(dāng)前心跳時(shí)間信息與所述第一預(yù)設(shè)時(shí)間的時(shí)間之和后,可以獲取當(dāng)前時(shí)間,比較所述時(shí)間之和與當(dāng)前時(shí)間的大小。

s140:所述監(jiān)聽服務(wù)器根據(jù)所述比較的結(jié)果控制所述集群中任務(wù)線程的運(yùn)行。

本申請(qǐng)實(shí)施例中,在步驟s130之后,所述監(jiān)聽服務(wù)器可以根據(jù)所述比較的結(jié)果控制所述集群中任務(wù)線程的運(yùn)行。具體的,可以包括下述中的任意一種:

當(dāng)所述比較的結(jié)果為所述時(shí)間之和小于所述當(dāng)前時(shí)間時(shí),所述監(jiān)聽服務(wù)器重啟所述集群中所述時(shí)間之和所對(duì)應(yīng)的任務(wù)線程的任務(wù)副本;

當(dāng)所述比較的結(jié)果為所述時(shí)間之和大于等于所述當(dāng)前時(shí)間時(shí),所述監(jiān)聽服務(wù)器執(zhí)行以第二預(yù)設(shè)時(shí)間為周期獲取所述數(shù)據(jù)庫中任務(wù)線程的當(dāng)前心跳時(shí)間信息的操作來完成所述集群中任務(wù)線程的運(yùn)行。

具體的,在實(shí)際應(yīng)用中,以上述任務(wù)線程a所對(duì)應(yīng)的所述時(shí)間之和time_heartbeat+time_first=9*3600+32*60+35為例,假設(shè)當(dāng)前時(shí)間09:32:45,可以表示為time_now=9*3600+32*60+45,那么可以得到time_heartbeat+time_first<time_now,相應(yīng)的,步驟s130中比較的結(jié)果為所述時(shí)間之和小于所述當(dāng)前時(shí)間,所述監(jiān)聽服務(wù)器可以通過重啟所述集群中所述時(shí)間之和所對(duì)應(yīng)的任務(wù)線程的任務(wù)副本來保證任務(wù)線程可以繼續(xù)運(yùn)行,從而可以進(jìn)行相應(yīng)業(yè)務(wù)的處理。相應(yīng)的,在所述監(jiān)聽服務(wù)器重啟所述集群中所述時(shí)間之和所對(duì)應(yīng)的任務(wù)線程的任務(wù)副本之后,所述方法還可以包括:

所述監(jiān)聽服務(wù)器建立所述任務(wù)線程與所述數(shù)據(jù)庫之間的心跳時(shí)間關(guān)聯(lián)通道。

具體的,當(dāng)監(jiān)聽服務(wù)器任務(wù)線程的任務(wù)副本之后,建立所述任務(wù)線程與所述數(shù)據(jù)庫之間的心跳時(shí)間關(guān)聯(lián)通道,可以保證當(dāng)前運(yùn)行中的任務(wù)線程可以占有相應(yīng)的心跳時(shí)間關(guān)聯(lián)通道。這樣無論所述任務(wù)線程對(duì)應(yīng)的原始任務(wù)線程是否已經(jīng)停止相應(yīng)任務(wù)的運(yùn)行,當(dāng)原始任務(wù)線程 發(fā)現(xiàn)已經(jīng)不再占有對(duì)應(yīng)心跳時(shí)間關(guān)聯(lián)通道后會(huì)自動(dòng)停止相應(yīng)任務(wù)的運(yùn)行。

具體的,在實(shí)際應(yīng)用中,以上述任務(wù)線程a所對(duì)應(yīng)的所述時(shí)間之和time_heartbeat+time_first=9*3600+32*60+35為例,假設(shè)當(dāng)前時(shí)間09:32:45,可以表示為time_now=9*3600+32*60+45,那么可以得到time_heartbeat+time_first>time_now,相應(yīng)的,步驟s130中比較的結(jié)果為所述時(shí)間之和大于所述當(dāng)前時(shí)間,可以判斷相應(yīng)的任務(wù)線程正在穩(wěn)定運(yùn)行,所述任務(wù)線程可以繼續(xù)以第一預(yù)設(shè)時(shí)間為周期在數(shù)據(jù)庫中更新存儲(chǔ)當(dāng)前心跳時(shí)間信息。相應(yīng)的,所述監(jiān)聽服務(wù)器可以繼續(xù)執(zhí)行s120以第二預(yù)設(shè)時(shí)間為周期獲取所述數(shù)據(jù)庫中任務(wù)線程的當(dāng)前心跳時(shí)間信息的操作來完成所述集群中任務(wù)線程的運(yùn)行。

由此可見,本申請(qǐng)一種集群中任務(wù)線程運(yùn)行的監(jiān)控方法的實(shí)施例中任務(wù)服務(wù)器基于心跳時(shí)間關(guān)聯(lián)通道將任務(wù)線程的當(dāng)前心跳時(shí)間信息以第一預(yù)設(shè)時(shí)間為周期在數(shù)據(jù)庫中更新存儲(chǔ),監(jiān)聽服務(wù)器從所述數(shù)據(jù)庫中獲取任務(wù)線程的當(dāng)前心跳時(shí)間信息之后,計(jì)算出當(dāng)前心跳時(shí)間信息與所述第一預(yù)設(shè)時(shí)間的時(shí)間之和,并通過比較所述時(shí)間之和與當(dāng)前時(shí)間的大小的方式判斷當(dāng)前任務(wù)線程是否正常運(yùn)行。然后,根據(jù)比較的結(jié)果可以有效的控制所述集群中任務(wù)線程的運(yùn)行。同時(shí),通過在任務(wù)線程啟動(dòng)運(yùn)行時(shí)檢查所述任務(wù)線程是否與所述數(shù)據(jù)庫之間建立了心跳時(shí)間關(guān)聯(lián)通道的方式,可以保證同一業(yè)務(wù)的任務(wù)線程間也存在了互斥性,可以避免任務(wù)沒有消亡卻盲目的重啟任務(wù)線程的任務(wù)副本的情況,有效解決了因所述任務(wù)線程重復(fù)啟動(dòng)的長時(shí)間并發(fā)報(bào)錯(cuò)。與現(xiàn)有技術(shù)相比,利用本申請(qǐng)實(shí)施例可以無需直接依賴任務(wù)線程的任務(wù)狀態(tài),直接判斷出任務(wù)線程是否正常運(yùn)行,同時(shí)解決了因所述任務(wù)線程重復(fù)啟動(dòng)的長時(shí)間并發(fā)報(bào)錯(cuò),有效提高了系統(tǒng)穩(wěn)定性,降低了系統(tǒng)風(fēng)險(xiǎn)。

考慮監(jiān)聽服務(wù)器為主的步驟,以下介紹本申請(qǐng)一種集群中任務(wù)線程運(yùn)行的監(jiān)控方法的另一種實(shí)施例,圖2是本申請(qǐng)?zhí)峁┑募褐腥蝿?wù)線程運(yùn)行的監(jiān)控方法的另一種實(shí)施例的流程示意圖,本申請(qǐng)?zhí)峁┝巳鐚?shí)施例或流程圖所述的方法操作步驟,但基于常規(guī)或者無創(chuàng)造性的勞動(dòng)可以包括更多或者更少的操作步驟。實(shí)施例中列舉的步驟順序僅僅為眾多步驟執(zhí)行順序中的一種方式,不代表唯一的執(zhí)行順序。在實(shí)際中執(zhí)行時(shí),可以按照實(shí)施例或者附圖所示的方法順序執(zhí)行或者并行執(zhí)行(例如并行處理器或者多線程處理的環(huán)境)。具體的如圖2所示,所述方法可以包括:

s210:以第二預(yù)設(shè)時(shí)間為周期獲取所述數(shù)據(jù)庫中任務(wù)線程的當(dāng)前心跳時(shí)間信息。

s220:計(jì)算所述任務(wù)線程的當(dāng)前心跳時(shí)間信息與任務(wù)服務(wù)器在數(shù)據(jù)庫中更新存儲(chǔ)所述任務(wù)線程的當(dāng)前心跳時(shí)間信息對(duì)應(yīng)周期的第一預(yù)設(shè)時(shí)間的時(shí)間之和,比較所述時(shí)間之和與當(dāng)前時(shí)間的大小。

s230:根據(jù)所述比較的結(jié)果控制所述集群中任務(wù)線程的運(yùn)行。

具體的,所述根據(jù)所述比較的結(jié)果控制所述集群中任務(wù)線程的運(yùn)行可以包括下述中的任意一種:

當(dāng)所述比較的結(jié)果為所述時(shí)間之和小于所述當(dāng)前時(shí)間時(shí),重啟所述集群中所述時(shí)間之和所對(duì)應(yīng)的任務(wù)線程的任務(wù)副本;

當(dāng)所述比較的結(jié)果為所述時(shí)間之和大于等于所述當(dāng)前時(shí)間時(shí),執(zhí)行以第二預(yù)設(shè)時(shí)間為周期獲取所述數(shù)據(jù)庫中任務(wù)線程的當(dāng)前心跳時(shí)間信息的操作來完成所述集群中任務(wù)線程的運(yùn)行。

進(jìn)一步的,在所述重啟所述集群中所述時(shí)間之和所對(duì)應(yīng)的任務(wù)線程的任務(wù)副本之后,所述方法還可以包括:

建立所述任務(wù)線程與所述數(shù)據(jù)庫之間的心跳時(shí)間關(guān)聯(lián)通道。

進(jìn)一步的,所述方法還可以包括:

啟動(dòng)所述集群中的任務(wù)線程,并分別建立所述集群中的任務(wù)線程與所述數(shù)據(jù)庫之間的心跳時(shí)間關(guān)聯(lián)通道。

由以上本申請(qǐng)實(shí)施例的技術(shù)方案可見,本申請(qǐng)中監(jiān)聽服務(wù)器以第二預(yù)設(shè)時(shí)間為周期從數(shù)據(jù)庫中獲取任務(wù)線程的當(dāng)前心跳時(shí)間信息之后,計(jì)算出當(dāng)前心跳時(shí)間信息與任務(wù)服務(wù)器在數(shù)據(jù)庫中更新存儲(chǔ)所述任務(wù)線程的當(dāng)前心跳時(shí)間信息對(duì)應(yīng)周期的第一預(yù)設(shè)時(shí)間的時(shí)間之和,并通過比較所述時(shí)間之和與當(dāng)前時(shí)間的大小的方式判斷當(dāng)前任務(wù)線程是否正常運(yùn)行。然后,根據(jù)比較的結(jié)果可以有效的控制所述集群中任務(wù)線程的運(yùn)行。與現(xiàn)有技術(shù)相比,利用本申請(qǐng)實(shí)施例可以無需直接依賴任務(wù)線程的任務(wù)狀態(tài),直接判斷出任務(wù)線程是否正常運(yùn)行,有效提高了系統(tǒng)穩(wěn)定性,降低了系統(tǒng)風(fēng)險(xiǎn)。

考慮任務(wù)服務(wù)器為主的步驟,以下介紹本申請(qǐng)一種集群中任務(wù)線程運(yùn)行的監(jiān)控方法的另一種實(shí)施例,圖3是本申請(qǐng)?zhí)峁┑募褐腥蝿?wù)線程運(yùn)行的監(jiān)控方法的另一種實(shí)施例的流程示意圖,本申請(qǐng)?zhí)峁┝巳鐚?shí)施例或流程圖所述的方法操作步驟,但基于常規(guī)或者無創(chuàng)造性的勞動(dòng)可以包括更多或者更少的操作步驟。實(shí)施例中列舉的步驟順序僅僅為眾多步驟執(zhí)行順序中的一種方式,不代表唯一的執(zhí)行順序。在實(shí)際中執(zhí)行時(shí),可以按照實(shí)施例或者附圖所示的方法順序執(zhí)行或者并行執(zhí)行(例如并行處理器或者多線程處理的環(huán)境)。具體的如圖3所示,所述方法可以包括:

s310:在監(jiān)聽服務(wù)器啟動(dòng)任務(wù)線程時(shí),檢查所述任務(wù)線程是否與所述數(shù)據(jù)庫之間建立了心跳時(shí)間關(guān)聯(lián)通道;

s320:當(dāng)所述檢查的結(jié)果為是時(shí),基于心跳時(shí)間關(guān)聯(lián)通道以第一預(yù)設(shè)時(shí)間為周期在數(shù)據(jù)庫中更新存儲(chǔ)任務(wù)線程的當(dāng)前心跳時(shí)間信息。

進(jìn)一步的,所述方法還可以包括:

當(dāng)所述檢查的結(jié)果為否時(shí),停止所述任務(wù)線程當(dāng)前任務(wù)的運(yùn)行。

由以上本申請(qǐng)實(shí)施例的技術(shù)方案可見,本申請(qǐng)中任務(wù)服務(wù)器在任務(wù)線程啟動(dòng)運(yùn)行時(shí)檢查所述任務(wù)線程是否與所述數(shù)據(jù)庫之間建立了心跳時(shí)間關(guān)聯(lián)通道的方式,可以保證同一業(yè)務(wù)的任務(wù)線程間也存在了互斥性,可以避免任務(wù)沒有消亡卻盲目的重啟任務(wù)線程的任務(wù)副本的情況,有效解決了因所述任務(wù)線程重復(fù)啟動(dòng)的長時(shí)間并發(fā)報(bào)錯(cuò)。然后,當(dāng)建立了所述心跳時(shí)間關(guān)聯(lián)通道后,基于心跳時(shí)間關(guān)聯(lián)通道以第一預(yù)設(shè)時(shí)間為周期在數(shù)據(jù)庫中更新存儲(chǔ)任務(wù)線程的當(dāng)前心跳時(shí)間信息,以使后續(xù)監(jiān)聽服務(wù)器可以基于所述當(dāng)前心跳時(shí)間信息判斷當(dāng)前任務(wù)線程是否正常運(yùn)行,進(jìn)而可以有效的控制所述集群中任務(wù)線程的運(yùn)行。與現(xiàn)有技術(shù)相比,利用本申請(qǐng)實(shí)施例可以解決了因所述任務(wù)線程重復(fù)啟動(dòng)的長時(shí)間并發(fā)報(bào)錯(cuò),有效提高了系統(tǒng)穩(wěn)定性,降低了系統(tǒng)風(fēng)險(xiǎn)。

本申請(qǐng)另一方面還提供一種集群中任務(wù)線程運(yùn)行的監(jiān)控裝置的一種實(shí)施例,圖4是本申請(qǐng)?zhí)峁┑募褐腥蝿?wù)線程運(yùn)行的監(jiān)控裝置的一種實(shí)施例的結(jié)構(gòu)示意圖,如圖4所示,所述裝置400可以包括:

心跳時(shí)間信息獲取模塊410,可以用于以第二預(yù)設(shè)時(shí)間為周期獲取所述數(shù)據(jù)庫中任務(wù)線程的當(dāng)前心跳時(shí)間信息。

數(shù)據(jù)計(jì)算模塊420,可以用于計(jì)算所述任務(wù)線程的當(dāng)前心跳時(shí)間信息與任務(wù)服務(wù)器在數(shù)據(jù)庫中更新存儲(chǔ)所述任務(wù)線程的當(dāng)前心跳時(shí)間信息對(duì)應(yīng)周期的第一預(yù)設(shè)時(shí)間的時(shí)間之和。

數(shù)據(jù)比較模塊430,可以用于比較所述數(shù)據(jù)計(jì)算模塊計(jì)算得到的時(shí)間之和與當(dāng)前時(shí)間的大小。

任務(wù)線程運(yùn)行控制模塊440,可以用于根據(jù)所述數(shù)據(jù)比較模塊比較的結(jié)果控制所述集群中任務(wù)線程的運(yùn)行。

本申請(qǐng)?zhí)峁┧鋈蝿?wù)線程運(yùn)行控制模塊440的一種具體實(shí)施例方式。具體的,圖5是本申請(qǐng)?zhí)峁┑乃鋈蝿?wù)線程運(yùn)行控制模塊一種實(shí)施例的模塊示意圖,如圖5所示,本申請(qǐng)的一種實(shí)施例中所述任務(wù)線程運(yùn)行控制模塊440可以包括:

第一控制處理單元441,可以用于當(dāng)所述比較的結(jié)果為所述時(shí)間之和小于所述當(dāng)前時(shí)間時(shí),重啟所述集群中所述時(shí)間之和所對(duì)應(yīng)的任務(wù)線程的任務(wù)副本;

第二控制處理單元442,可以用于當(dāng)所述比較的結(jié)果為所述時(shí)間之和大于等于所述當(dāng)前 時(shí)間時(shí),執(zhí)行以第二預(yù)設(shè)時(shí)間為周期獲取所述數(shù)據(jù)庫中任務(wù)線程的當(dāng)前心跳時(shí)間信息的操作來完成所述集群中任務(wù)線程的運(yùn)行。

圖6是本申請(qǐng)?zhí)峁┑募褐腥蝿?wù)線程運(yùn)行的監(jiān)控裝置的另一種實(shí)施例的結(jié)構(gòu)示意圖,另一種實(shí)施例中,如圖6所示,所述裝置400還可以包括:

第一關(guān)聯(lián)通道建立模塊450,可以用于在重啟所述集群中所述時(shí)間之和所對(duì)應(yīng)的任務(wù)線程的任務(wù)副本之后,建立所述任務(wù)線程與所述數(shù)據(jù)庫之間的心跳時(shí)間關(guān)聯(lián)通道。

圖7是本申請(qǐng)?zhí)峁┑募褐腥蝿?wù)線程運(yùn)行的監(jiān)控裝置的另一種實(shí)施例的結(jié)構(gòu)示意圖,另一種實(shí)施例中,如圖7所示,所述裝置400還可以包括:

第二關(guān)聯(lián)通道建立模塊460,可以用于啟動(dòng)所述集群中的任務(wù)線程,并分別建立所述集群中的任務(wù)線程與所述數(shù)據(jù)庫之間的心跳時(shí)間關(guān)聯(lián)通道。

本申請(qǐng)中心跳時(shí)間信息獲取模塊410從所述數(shù)據(jù)庫中以第二預(yù)設(shè)時(shí)間為周期獲取任務(wù)線程的當(dāng)前心跳時(shí)間信息;然后,數(shù)據(jù)計(jì)算模塊420可以通過計(jì)算得到當(dāng)前心跳時(shí)間信息與所述第一預(yù)設(shè)時(shí)間的時(shí)間之和;接著,數(shù)據(jù)比較模塊430可以通過比較所述時(shí)間之和與當(dāng)前時(shí)間的大小的方式判斷當(dāng)前任務(wù)線程是否正常運(yùn)行。最后,任務(wù)線程運(yùn)行控制模塊440可以根據(jù)比較的結(jié)果有效的控制所述集群中任務(wù)線程的運(yùn)行,提高系統(tǒng)穩(wěn)定性,降低系統(tǒng)風(fēng)險(xiǎn)。

本申請(qǐng)另一方面還提供一種集群中任務(wù)線程運(yùn)行的監(jiān)控裝置的另一種實(shí)施例,圖8是本申請(qǐng)?zhí)峁┑募褐腥蝿?wù)線程運(yùn)行的監(jiān)控裝置的一種實(shí)施例的結(jié)構(gòu)示意圖,如圖8所示,所述裝置800可以包括:

檢查模塊810,可以用于在監(jiān)聽服務(wù)器啟動(dòng)任務(wù)線程時(shí),檢查所述任務(wù)線程是否與所述數(shù)據(jù)庫之間建立了心跳時(shí)間關(guān)聯(lián)通道;

心跳時(shí)間信息更新模塊820,可以用于當(dāng)所述檢查模塊的檢查結(jié)果為是時(shí),基于心跳時(shí)間關(guān)聯(lián)通道以第一預(yù)設(shè)時(shí)間為周期在數(shù)據(jù)庫中更新存儲(chǔ)任務(wù)線程的當(dāng)前心跳時(shí)間信息。

在另一個(gè)實(shí)施例中,所述裝置800還可以包括:

任務(wù)運(yùn)行停止模塊,可以用于當(dāng)所述檢查模塊的檢查結(jié)果為否時(shí),停止所述任務(wù)線程當(dāng)前任務(wù)的運(yùn)行。

本申請(qǐng)?zhí)峁┑臋z查模塊810通過在任務(wù)線程啟動(dòng)運(yùn)行時(shí)檢查所述任務(wù)線程是否與所述數(shù)據(jù)庫之間建立了心跳時(shí)間關(guān)聯(lián)通道的方式,可以保證同一業(yè)務(wù)的任務(wù)線程間也存在了互斥性,可以避免任務(wù)沒有消亡卻盲目的重啟任務(wù)線程的任務(wù)副本的情況,有效解決了因所述任務(wù)線程重復(fù)啟動(dòng)的長時(shí)間并發(fā)報(bào)錯(cuò)。

本申請(qǐng)另一方面還提供一種集群中任務(wù)線程運(yùn)行的監(jiān)控系統(tǒng),圖9是本申請(qǐng)?zhí)峁┑募褐腥蝿?wù)線程運(yùn)行的監(jiān)控系統(tǒng)的一種實(shí)施例的結(jié)構(gòu)示意圖,如圖9所示,所述系統(tǒng)900可以包括:

監(jiān)聽服務(wù)器910,可以用于以第二預(yù)設(shè)時(shí)間為周期獲取所述數(shù)據(jù)庫中任務(wù)線程的當(dāng)前心跳時(shí)間信息;以及用于計(jì)算所述任務(wù)線程的當(dāng)前心跳時(shí)間信息與任務(wù)服務(wù)器在數(shù)據(jù)庫中更新存儲(chǔ)所述任務(wù)線程的當(dāng)前心跳時(shí)間信息對(duì)應(yīng)周期的第一預(yù)設(shè)時(shí)間的時(shí)間之和,比較所述時(shí)間之和與當(dāng)前時(shí)間的大??;以及用于根據(jù)所述比較的結(jié)果控制所述集群中任務(wù)線程的運(yùn)行;

任務(wù)服務(wù)器920,可以用于在監(jiān)聽服務(wù)器啟動(dòng)任務(wù)線程時(shí),檢查所述任務(wù)線程是否與所述數(shù)據(jù)庫之間建立了心跳時(shí)間關(guān)聯(lián)通道;以及用于當(dāng)所述檢查的結(jié)果為是時(shí),基于心跳時(shí)間關(guān)聯(lián)通道以第一預(yù)設(shè)時(shí)間為周期在數(shù)據(jù)庫中更新存儲(chǔ)任務(wù)線程的當(dāng)前心跳時(shí)間信息;

數(shù)據(jù)庫930,可以用于存儲(chǔ)集群中任務(wù)線程的當(dāng)前心跳時(shí)間信息。

由此可見,本申請(qǐng)一種集群中任務(wù)線程運(yùn)行的監(jiān)控方法、裝置及系統(tǒng)的實(shí)施例基于心跳時(shí)間關(guān)聯(lián)通道將任務(wù)線程的當(dāng)前心跳時(shí)間信息以第一預(yù)設(shè)時(shí)間為周期在數(shù)據(jù)庫中更新存儲(chǔ),監(jiān)聽服務(wù)器從所述數(shù)據(jù)庫中獲取任務(wù)線程的當(dāng)前心跳時(shí)間信息之后,計(jì)算出當(dāng)前心跳時(shí)間信息與所述第一預(yù)設(shè)時(shí)間的時(shí)間之和,并通過比較所述時(shí)間之和與當(dāng)前時(shí)間的大小的方式判斷當(dāng)前任務(wù)線程是否正常運(yùn)行。然后,根據(jù)比較的結(jié)果可以有效的控制所述集群中任務(wù)線程的運(yùn)行。同時(shí),通過在任務(wù)線程啟動(dòng)運(yùn)行時(shí)檢查所述任務(wù)線程是否與所述數(shù)據(jù)庫之間建立了心跳時(shí)間關(guān)聯(lián)通道的方式,可以保證同一業(yè)務(wù)的任務(wù)線程間也存在了互斥性,可以避免任務(wù)沒有消亡卻盲目的重啟任務(wù)線程的任務(wù)副本的情況,有效解決了因所述任務(wù)線程重復(fù)啟動(dòng)的長時(shí)間并發(fā)報(bào)錯(cuò)。與現(xiàn)有技術(shù)相比,利用本申請(qǐng)實(shí)施例可以無需直接依賴任務(wù)線程的任務(wù)狀態(tài),直接判斷出任務(wù)線程是否正常運(yùn)行,同時(shí)解決了因所述任務(wù)線程重復(fù)啟動(dòng)的長時(shí)間并發(fā)報(bào)錯(cuò),有效提高了系統(tǒng)穩(wěn)定性,降低了系統(tǒng)風(fēng)險(xiǎn)。

盡管本申請(qǐng)內(nèi)容中提到數(shù)據(jù)庫、監(jiān)聽服務(wù)器、和任務(wù)服務(wù)器之間的數(shù)據(jù)交互等之類的數(shù)據(jù)處理的描述,但是,本申請(qǐng)并不局限于必須是完全標(biāo)準(zhǔn)或者所提及的數(shù)據(jù)處理應(yīng)用環(huán)境的情況。本申請(qǐng)中各個(gè)實(shí)施例中所涉及的上述描述僅是本申請(qǐng)中的一些實(shí)施例中的應(yīng)用。當(dāng)然,在符合本申請(qǐng)上述各實(shí)施例的中所述的處理方法步驟的其他無創(chuàng)造性的變形,仍然可以實(shí)現(xiàn)相同的申請(qǐng),在此不再贅述。

雖然本申請(qǐng)?zhí)峁┝巳鐚?shí)施例或流程圖所述的方法操作步驟,但基于常規(guī)或者無創(chuàng)造性的手段可以包括更多或者更少的操作步驟。實(shí)施例中列舉的步驟順序僅僅為眾多步驟執(zhí)行順序中的一種方式,不代表唯一的執(zhí)行順序。在實(shí)際中的裝置或客戶端產(chǎn)品執(zhí)行時(shí),可以按照實(shí) 施例或者附圖所示的方法順序執(zhí)行或者并行執(zhí)行(例如并行處理器或者多線程處理的環(huán)境)。

上述實(shí)施例闡明裝置或模塊,具體可以由計(jì)算機(jī)芯片或?qū)嶓w實(shí)現(xiàn),或者由具有某種功能的產(chǎn)品來實(shí)現(xiàn)。為了描述的方便,描述以上裝置時(shí)以功能分為各種模塊分別描述。當(dāng)然,在實(shí)施本申請(qǐng)時(shí)可以把各模塊的功能在同一個(gè)或多個(gè)軟件和/或硬件中實(shí)現(xiàn),也可以將實(shí)現(xiàn)同一功能的模塊由多個(gè)子模塊或子單元的組合實(shí)現(xiàn)。

本領(lǐng)域技術(shù)人員也知道,除了以純計(jì)算機(jī)可讀程序代碼方式實(shí)現(xiàn)控制器以外,完全可以通過將方法步驟進(jìn)行邏輯編程來使得控制器以邏輯門、開關(guān)、專用集成電路、可編程邏輯控制器和嵌入微控制器等的形式來實(shí)現(xiàn)相同功能。因此這種控制器可以被認(rèn)為是一種硬件部件,而對(duì)其內(nèi)部包括的用于實(shí)現(xiàn)各種功能的裝置也可以視為硬件部件內(nèi)的結(jié)構(gòu)。或者甚至,可以將用于實(shí)現(xiàn)各種功能的裝置視為既可以是實(shí)現(xiàn)方法的軟件模塊又可以是硬件部件內(nèi)的結(jié)構(gòu)。

本申請(qǐng)可以在由計(jì)算機(jī)執(zhí)行的計(jì)算機(jī)可執(zhí)行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)、類等等。也可以在分布式計(jì)算環(huán)境中實(shí)踐本申請(qǐng),在這些分布式計(jì)算環(huán)境中,由通過通信網(wǎng)絡(luò)而被連接的遠(yuǎn)程處理設(shè)備來執(zhí)行任務(wù)。在分布式計(jì)算環(huán)境中,程序模塊可以位于包括存儲(chǔ)設(shè)備在內(nèi)的本地和遠(yuǎn)程計(jì)算機(jī)存儲(chǔ)介質(zhì)中。

通過以上的實(shí)施方式的描述可知,本領(lǐng)域的技術(shù)人員可以清楚地了解到本申請(qǐng)可借助軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn)?;谶@樣的理解,本申請(qǐng)的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在存儲(chǔ)介質(zhì)中,如rom/ram、磁碟、光盤等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),移動(dòng)終端,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本申請(qǐng)各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。

本說明書中的各個(gè)實(shí)施例采用遞進(jìn)的方式描述,各個(gè)實(shí)施例之間相同或相似的部分互相參見即可,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處。本申請(qǐng)可用于眾多通用或?qū)S玫挠?jì)算機(jī)系統(tǒng)環(huán)境或配置中。例如:個(gè)人計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)、手持設(shè)備或便攜式設(shè)備、平板型設(shè)備、移動(dòng)通信終端、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、可編程的電子設(shè)備、網(wǎng)絡(luò)pc、小型計(jì)算機(jī)、大型計(jì)算機(jī)、包括以上任何系統(tǒng)或設(shè)備的分布式計(jì)算環(huán)境等等。

雖然通過實(shí)施例描繪了本申請(qǐng),本領(lǐng)域普通技術(shù)人員知道,本申請(qǐng)有許多變形和變化而不脫離本申請(qǐng)的精神,希望所附的權(quán)利要求包括這些變形和變化而不脫離本申請(qǐng)的精神。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
湘阴县| 武汉市| 积石山| 新邵县| 四子王旗| 观塘区| 油尖旺区| 高安市| 明水县| 鄱阳县| 琼海市| 曲阳县| 东台市| 四会市| 华容县| 乐亭县| 宣城市| 鹤岗市| 邢台市| 高密市| 九龙城区| 罗山县| 个旧市| 阿坝| 高清| 沂南县| 澎湖县| 鹤壁市| 苏尼特右旗| 尉犁县| 河津市| 惠州市| 莱西市| 监利县| 枣庄市| 股票| 桐乡市| 宽甸| 灵武市| 茌平县| 古交市|