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

負(fù)載平衡方法和裝置的制作方法

文檔序號(hào):6440552閱讀:160來(lái)源:國(guó)知局
專利名稱:負(fù)載平衡方法和裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及軟件開(kāi)發(fā)領(lǐng)域,具體而言,涉及一種負(fù)載平衡方法和裝置。
背景技術(shù)
引擎是運(yùn)行于網(wǎng)絡(luò)中,通用的、可伸縮的,用于處理耗時(shí)耗資源的任務(wù)的框架系統(tǒng)。服務(wù)器通過(guò)運(yùn)行引擎,向客戶端提供各種服務(wù)。
在多任務(wù)系統(tǒng)中,用戶向服務(wù)器提出多個(gè)任務(wù)請(qǐng)求,服務(wù)器應(yīng)當(dāng)以合理的機(jī)制調(diào)度合適的引擎運(yùn)行相應(yīng)的任務(wù),以避免任務(wù)擁塞。
例如,現(xiàn)有出版流程重復(fù)性勞動(dòng)多、效率低,各臺(tái)設(shè)備之間沒(méi)有協(xié)調(diào)和調(diào)度,更談不上整個(gè)設(shè)備集群調(diào)度的資源優(yōu)化和負(fù)載平衡,結(jié)果造成了設(shè)備和人力資源的浪費(fèi)。發(fā)明內(nèi)容
本發(fā)明旨在提供一種負(fù)載平衡方法和裝置,以解決任務(wù)擁塞的問(wèn)題。
在本發(fā)明的實(shí)施例中,提供了一種負(fù)載平衡方法,包括:從任務(wù)隊(duì)列的隊(duì)首中取出一個(gè)任務(wù);從與任務(wù)的業(yè)務(wù)類型相對(duì)應(yīng)的引擎中選擇處理能力最強(qiáng)的引擎;將任務(wù)分配給所選引擎,并將所選引擎的當(dāng)前處理的任務(wù)數(shù)加I。
在本發(fā)明的實(shí)施例中,提供了一種負(fù)載平衡裝置,包括:取任務(wù)模塊,用于從任務(wù)隊(duì)列的隊(duì)首中取出一個(gè)任務(wù);選擇模塊,用于從與任務(wù)的業(yè)務(wù)類型相對(duì)應(yīng)的引擎中選擇處理能力最強(qiáng)的引擎;分配模塊,用于將任務(wù)分配給所選引擎,并將所選引擎的當(dāng)前處理的任務(wù)數(shù)加I。
本發(fā)明上述實(shí)施例的負(fù)載平衡方法和裝置因?yàn)楹侠淼卣{(diào)度引擎,所以克服了任務(wù)擁塞的問(wèn)題,提高了引擎的運(yùn)行效率。


此處所說(shuō)明的附圖用來(lái)提供對(duì)本發(fā)明的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本發(fā)明的示意性實(shí)施例及其說(shuō)明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中:
圖1示出了根據(jù)本發(fā)明實(shí)施例的負(fù)載平衡方法的流程圖2示出了根據(jù)本發(fā)明優(yōu)選實(shí)施例的負(fù)載平衡方法的流程圖3示出了根據(jù)本發(fā)明實(shí)施例的負(fù)載平衡裝置的示意圖4示出了根據(jù)本發(fā)明優(yōu)選實(shí)施例的任務(wù)調(diào)度和負(fù)載平衡的系統(tǒng)的示意圖。
具體實(shí)施方式
下面將參考附圖并結(jié)合實(shí)施例,來(lái)詳細(xì)說(shuō)明本發(fā)明。
圖1示出了根據(jù)本發(fā)明實(shí)施例的負(fù)載平衡方法的流程圖,包括:
步驟S10,從任務(wù)隊(duì)列的隊(duì)首中取出一個(gè)任務(wù);
步驟S20,從與任務(wù)的業(yè)務(wù)類型相對(duì)應(yīng)的引擎中選擇處理能力最強(qiáng)的引擎;
步驟S30,將任務(wù)分配給所選引擎,并將所選引擎的當(dāng)前處理的任務(wù)數(shù)加I。
本方法在滿足給定的任務(wù)執(zhí)行順序的前提下,可以有效地利用資源,快速完成任務(wù)處理。
優(yōu)選地,步驟S20包括:確定與任務(wù)的業(yè)務(wù)類型相對(duì)應(yīng)的引擎;獲取各個(gè)相對(duì)應(yīng)的引擎當(dāng)前的處理能力;確定其中空閑任務(wù)數(shù)最多的引擎。
業(yè)務(wù)類型具體的可以為文檔轉(zhuǎn)換執(zhí)行引擎、抽圖執(zhí)行引擎、圖像轉(zhuǎn)換執(zhí)行引擎等,負(fù)責(zé)處理相應(yīng)的業(yè)務(wù)。本優(yōu)選實(shí)施例以比較簡(jiǎn)單地方法確定了處理能力最強(qiáng)的引擎。
優(yōu)選地,空閑任務(wù)數(shù)為引擎的最大任務(wù)處理數(shù)減去其當(dāng)前處理的任務(wù)數(shù)。
優(yōu)選地,本方法還包括:確定所有相對(duì)應(yīng)的引擎均不具備處理能力;使任務(wù)保持等待,直到確定一個(gè)相對(duì)應(yīng)的引擎空閑。例如,獲取等待任務(wù)隊(duì)列中的第一個(gè)任務(wù)的業(yè)務(wù)類型,尋找各執(zhí)行引擎的業(yè)務(wù)類型與之匹配的引擎,如果相同則判斷執(zhí)行引擎正在處理的任務(wù)個(gè)數(shù)是否小于CPU內(nèi)核數(shù),如果是則說(shuō)明引擎還可以處理任務(wù),如果大于CPU內(nèi)核數(shù),則說(shuō)明引擎忙,不可以處理任務(wù)。
優(yōu)選地,本方法還包括:預(yù)先從客戶端接收要處理的任務(wù);將要處理的任務(wù)插入任務(wù)隊(duì)列的隊(duì)尾。該方法比較簡(jiǎn)單,用隊(duì)列數(shù)據(jù)結(jié)構(gòu)即可實(shí)現(xiàn)。
圖2示出了根據(jù)本發(fā)明優(yōu)選實(shí)施例的負(fù)載平衡方法的流程圖,包括:
步驟S201,收到任務(wù)請(qǐng)求時(shí),將任務(wù)存儲(chǔ)到等待執(zhí)行任務(wù)隊(duì)列中。
通過(guò)循環(huán)監(jiān)測(cè)等待執(zhí)行任務(wù)隊(duì)列中的情況,一旦發(fā)現(xiàn)等待任務(wù)隊(duì)列中有任務(wù),開(kāi)始執(zhí)行步驟S202 ;否則不斷地監(jiān)測(cè)等待執(zhí)行任務(wù)隊(duì)列中的任務(wù)情況。
步驟S202,監(jiān)測(cè)各執(zhí)行引擎的能力、負(fù)載以及處理任務(wù)情況、業(yè)務(wù)處理數(shù)目;
向各個(gè)執(zhí)行引擎發(fā)送消息,獲取各執(zhí)行引擎的CPU內(nèi)核數(shù)、CPU使用率、正在處理的任務(wù)個(gè)數(shù)以及業(yè)務(wù)類型等;
獲取等待任務(wù)隊(duì)列中的第一個(gè)任務(wù)的業(yè)務(wù)類型,尋找各執(zhí)行引擎的業(yè)務(wù)類型與之匹配的引擎,如果相同則判斷執(zhí)行引擎正在處理的任務(wù)個(gè)數(shù)是否小于CPU內(nèi)核數(shù),如果是則說(shuō)明引擎還可以處理任務(wù),執(zhí)行步驟S203 ;否則繼續(xù)監(jiān)測(cè);
該執(zhí)行引擎同時(shí)處理的任務(wù)數(shù),不超過(guò)CPU的內(nèi)核數(shù)量。
步驟S203,將當(dāng)前符合該任務(wù)業(yè)務(wù)請(qǐng)求類型的空閑執(zhí)行引擎存儲(chǔ)到可用引擎隊(duì)列中;
步驟S204,判斷可用引擎隊(duì)列中是否有引擎,如果有則在可用引擎隊(duì)列中找到處理能力最強(qiáng)的引擎,將任務(wù)分配給引擎進(jìn)行處理,并將該任務(wù)從等待任務(wù)隊(duì)列中移除,存儲(chǔ)到執(zhí)行隊(duì)列中,同時(shí)修改該引擎處理任務(wù)的數(shù)目,現(xiàn)有處理任務(wù)數(shù)目加I ;否則繼續(xù)執(zhí)行步驟S202,直到找到可用的引擎。
具體的可以為:在可用引擎隊(duì)列中,找到CPU使用率最小的引擎,也就是目前處理能力最強(qiáng)的引擎,將任務(wù)發(fā)給該引擎進(jìn)行處理,并將該引擎正在處理任務(wù)的數(shù)目加I;
之后,針對(duì)下一個(gè)待執(zhí)行的任務(wù),再次獲取各引擎的處理能力,總是把當(dāng)前任務(wù)分配給處理能力最強(qiáng)的引擎來(lái)處理。直到所有的執(zhí)行引擎都已經(jīng)被當(dāng)前的任務(wù)占用,服務(wù)器就不再繼續(xù)把任務(wù)分配下去。未分配下去的任務(wù)處于等待執(zhí)行任務(wù)隊(duì)列中,直到有的引擎完成了當(dāng)前的任務(wù)空閑下來(lái),才會(huì)被分配、處理。
圖3示出了根據(jù)本發(fā)明實(shí)施例的負(fù)載平衡裝置的示意圖,包括:
取任務(wù)模塊10,用于從任務(wù)隊(duì)列的隊(duì)首中取出一個(gè)任務(wù);
選擇模塊20,用于從與任務(wù)的業(yè)務(wù)類型相對(duì)應(yīng)的引擎中選擇處理能力最強(qiáng)的引擎;
分配模塊30,用于將任務(wù)分配給所選的引擎,并將所選引擎的當(dāng)前處理的任務(wù)數(shù)加I。
本裝置提高了引擎的運(yùn)行效率。
優(yōu)選地,選擇模塊包括:
業(yè)務(wù)類型模塊,用于確定與任務(wù)的業(yè)務(wù)類型相對(duì)應(yīng)的引擎;
獲取模塊,用于獲取各個(gè)相對(duì)應(yīng)的引擎當(dāng)前的處理能力;
計(jì)算模塊,用于確定其中空閑任務(wù)數(shù)最多的引擎。
優(yōu)選地,空閑任務(wù)數(shù)為引擎的最大任務(wù)處理數(shù)減去其當(dāng)前處理的任務(wù)數(shù)。
優(yōu)選地,本裝置還包括:等待模塊,用于當(dāng)計(jì)算模塊確定所有相對(duì)應(yīng)的引擎均不具備處理能力時(shí),使任務(wù)保持等待,直到計(jì)算模塊確定一個(gè)相對(duì)應(yīng)的引擎空閑。
優(yōu)選地,本裝置還包括:
通信模塊,用于預(yù)先從客戶端接收要處理的任務(wù);
插入模塊,用于將要處理的任務(wù)插入任務(wù)隊(duì)列的隊(duì)尾。
圖4示出了根據(jù)本發(fā)明優(yōu)選實(shí)施例的任務(wù)調(diào)度和負(fù)載平衡的系統(tǒng)的示意圖,包括多個(gè)客戶端、一個(gè)服務(wù)器和多個(gè)執(zhí)行引擎。
客戶端發(fā)送任務(wù)到服務(wù)器的通信模塊201中;
通信模塊201接收到任務(wù)后,判斷其任務(wù)的合法性,如果合法則將任務(wù)傳遞給調(diào)度模塊202 ;否則直接通知客戶端;
調(diào)度模塊202是服務(wù)器的核心,包括圖3的取任務(wù)模塊、選擇模塊和分配模塊。
調(diào)度模塊主要負(fù)責(zé)各執(zhí)行引擎,記錄各執(zhí)行引擎的IP地址,CPU使用率和任務(wù)處理情況;負(fù)責(zé)管理等待、運(yùn)行以及處理完畢的任務(wù)隊(duì)列。
調(diào)度模塊接收到任務(wù)后將任務(wù)存儲(chǔ)到等待執(zhí)行任務(wù)隊(duì)列中,同時(shí),周期性的監(jiān)測(cè)等待執(zhí)行任務(wù)隊(duì)列,監(jiān)控有任務(wù)需要處理時(shí),它向所有的引擎發(fā)送一個(gè)消息,獲取各引擎當(dāng)前的處理能力。同時(shí)針對(duì)下一個(gè)任務(wù),再次獲取各引擎的處理能力,總是把當(dāng)前任務(wù)分配給處理能力最強(qiáng)的引擎來(lái)處理。直到所有的執(zhí)行引擎都已經(jīng)被當(dāng)前的任務(wù)占用,服務(wù)器就不再繼續(xù)把任務(wù)分配下去。未分配下去的任務(wù)處于等待執(zhí)行任務(wù)隊(duì)列中,直到有的引擎完成了當(dāng)前的任務(wù)空閑下來(lái),才會(huì)被分配、處理。
執(zhí)行引擎可以具體地分為文檔轉(zhuǎn)換引擎、抽圖引擎以及圖像轉(zhuǎn)換引擎等。
執(zhí)行引擎收到任務(wù)后,開(kāi)始進(jìn)行處理,完成后無(wú)論失敗,調(diào)用回調(diào)模塊203,將處理結(jié)果通知服務(wù)器;
回調(diào)模塊203再將處理結(jié)果通知客戶端,完成本次任務(wù)的調(diào)度和處理。
從以上的描述中可以看出,本發(fā)明可以實(shí)現(xiàn)分布式任務(wù)調(diào)度和負(fù)載平衡,最大限度地提高資源使用率,提高系統(tǒng)吞吐量。
顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計(jì)算裝置來(lái)實(shí)現(xiàn),它們可以集中在單個(gè)的計(jì)算裝置上,或者分布在多個(gè)計(jì)算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計(jì)算裝置可執(zhí)行的程序代碼來(lái)實(shí)現(xiàn),從而,可以將它們存儲(chǔ)在存儲(chǔ)裝置中由計(jì)算裝置來(lái)執(zhí)行,或者將它們分別制作成各個(gè)集成電路模塊,或者將它們中的多個(gè)模塊或步驟制作成單個(gè)集成電路模塊來(lái)實(shí)現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對(duì)于本領(lǐng)域的技術(shù)人員來(lái)說(shuō),本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種負(fù)載平衡方法,其特征在于,包括: 從任務(wù)隊(duì)列的隊(duì)首中取出一個(gè)任務(wù); 從與所述任務(wù)的業(yè)務(wù)類型相對(duì)應(yīng)的引擎中選擇處理能力最強(qiáng)的引擎; 將所述任務(wù)分配給所選引擎,并將所選引擎的當(dāng)前處理的任務(wù)數(shù)加I。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,從與所述任務(wù)的業(yè)務(wù)類型相對(duì)應(yīng)的引擎中選擇處理能力最強(qiáng)的引擎包括: 確定與所述任務(wù)的業(yè)務(wù)類型相對(duì)應(yīng)的引擎; 獲取各個(gè)所述相對(duì)應(yīng)的引擎當(dāng)前的處理能力; 確定其中空閑任務(wù)數(shù)最多的引擎。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述空閑任務(wù)數(shù)為引擎的最大任務(wù)處理數(shù)減去其當(dāng)前處理的任務(wù)數(shù)。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,還包括: 確定所有所述相對(duì)應(yīng)的引擎均不具備處理能力; 使所述任務(wù)保持等待,直到確定一個(gè)所述相對(duì)應(yīng)的引擎空閑。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,還包括: 預(yù)先從客戶端接收要處理的任務(wù); 將要處理的任務(wù)插入所述任務(wù)隊(duì)列的隊(duì)尾。
6.一種負(fù)載平衡裝置,其特征在于,包括: 取任務(wù)模塊,用于從任務(wù)隊(duì)列的隊(duì)首中取出一個(gè)任務(wù); 選擇模塊,用于從與所述任務(wù)的業(yè)務(wù)類型相對(duì)應(yīng)的引擎中選擇處理能力最強(qiáng)的引擎; 分配模塊,用于將所述任務(wù)分配給所選的引擎,并將所選引擎的當(dāng)前處理的任務(wù)數(shù)加1
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述選擇模塊包括: 業(yè)務(wù)類型模塊,用于確定與所述任務(wù)的業(yè)務(wù)類型相對(duì)應(yīng)的引擎; 獲取模塊,用于獲取各個(gè)所述相對(duì)應(yīng)的引擎當(dāng)前的處理能力; 計(jì)算模塊,用于確定其中空閑任務(wù)數(shù)最多的引擎。
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述空閑任務(wù)數(shù)為引擎的最大任務(wù)處理數(shù)減去其當(dāng)前處理的任務(wù)數(shù)。
9.根據(jù)權(quán)利要求6所述的裝置,其特征在于,還包括: 等待模塊,用于當(dāng)所述計(jì)算模塊確定所有所述相對(duì)應(yīng)的引擎均不具備處理能力時(shí),使所述任務(wù)保持等待,直到所述計(jì)算模塊確定一個(gè)所述相對(duì)應(yīng)的引擎空閑。
10.根據(jù)權(quán)利要求6所述的裝置,其特征在于,還包括: 通信模塊,用于預(yù)先從客戶端接收要處理的任務(wù); 插入模塊,用于將要處理的任務(wù)插入所述任務(wù)隊(duì)列的隊(duì)尾。
全文摘要
本發(fā)明提供了一種負(fù)載平衡方法,包括從任務(wù)隊(duì)列的隊(duì)首中取出一個(gè)任務(wù);從與任務(wù)的業(yè)務(wù)類型相對(duì)應(yīng)的引擎中選擇處理能力最強(qiáng)的引擎;將任務(wù)分配給所選引擎,并將所選引擎的當(dāng)前處理的任務(wù)數(shù)加1。本發(fā)明提供了一種負(fù)載平衡裝置,包括取任務(wù)模塊,用于從任務(wù)隊(duì)列的隊(duì)首中取出一個(gè)任務(wù);選擇模塊,用于從與任務(wù)的業(yè)務(wù)類型相對(duì)應(yīng)的引擎中選擇處理能力最強(qiáng)的引擎;分配模塊,用于將任務(wù)分配給所選引擎,并將所選引擎的當(dāng)前處理的任務(wù)數(shù)加1。本發(fā)明提高了引擎的運(yùn)行效率。
文檔編號(hào)G06F9/50GK103150213SQ20111040639
公開(kāi)日2013年6月12日 申請(qǐng)日期2011年12月6日 優(yōu)先權(quán)日2011年12月6日
發(fā)明者周萍萍 申請(qǐng)人:北大方正集團(tuán)有限公司, 北京北大方正電子有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
七台河市| 陆良县| 云梦县| 丰城市| 瑞安市| 胶州市| 灌阳县| 翁牛特旗| 双城市| 寿阳县| 靖西县| 吉木萨尔县| 达日县| 常熟市| 津市市| 绵竹市| 吐鲁番市| 龙口市| 都安| 丰镇市| 凤阳县| 万全县| 千阳县| 遂平县| 武城县| 东安县| 汽车| 中方县| 韩城市| 屯门区| 原平市| 思茅市| 察哈| 建昌县| 鹤岗市| 东城区| 大理市| 靖西县| 西宁市| 富顺县| 乌兰察布市|