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

分布式系統(tǒng)及其調(diào)度方法和調(diào)度裝置與流程

文檔序號(hào):11519432閱讀:192來(lái)源:國(guó)知局
分布式系統(tǒng)及其調(diào)度方法和調(diào)度裝置與流程

本發(fā)明涉及分布式技術(shù)領(lǐng)域,特別是涉及一種分布式系統(tǒng)及其調(diào)度方法和調(diào)度裝置。



背景技術(shù):

對(duì)于大部分分布式系統(tǒng)來(lái)說(shuō),其運(yùn)行的生產(chǎn)任務(wù)所占用的資源經(jīng)常是動(dòng)態(tài)變化的,該現(xiàn)象在搜索系統(tǒng)中特別明顯,每天晚上或者中午的時(shí)間段,流量高峰期的流量是低峰期的2~3倍。如果按照流量高峰期進(jìn)行估算機(jī)器資源,就會(huì)出現(xiàn)在流量低峰期系統(tǒng)特別空閑的狀態(tài)。如何利用這一部分資源進(jìn)行一些低優(yōu)先級(jí)任務(wù)的處理,以使得在流量可能高可能低的狀況下,最大化利用非高峰期時(shí)段的cpu、內(nèi)存、io的資源,是目前需要解決的一個(gè)關(guān)鍵問(wèn)題。

傳統(tǒng)的分布式調(diào)度系統(tǒng)中針對(duì)這種問(wèn)題一般有如下三種方案。第一種是搶占式固定額度的分配的方法,即每一個(gè)任務(wù)都有一個(gè)優(yōu)先級(jí),同時(shí)固定分配了一個(gè)cpu和內(nèi)存的資源占用,這樣一個(gè)高優(yōu)先的任務(wù)肯定能夠占有屬于它的資源(cpu和內(nèi)存),不會(huì)被低優(yōu)先級(jí)的程序所搶占。這種方法實(shí)現(xiàn)簡(jiǎn)單,利于理解,大多數(shù)的在線離線復(fù)用的系統(tǒng)都采用了類似的方案,但是這種系統(tǒng)一個(gè)很嚴(yán)重的缺陷就是,像搜索系統(tǒng)這樣流量高峰和低峰資源差別巨大的場(chǎng)景下,必須要固定分配高峰期額度的資源,才能夠滿足高峰期的資源利用情況,這樣在低峰期依舊浪費(fèi)了非常多的資源。

第二種使用的方案是,按照不同的時(shí)間段進(jìn)行分配。該方案是在第一種方案的基礎(chǔ)上進(jìn)行改進(jìn)的一個(gè)方案,用戶需要設(shè)定一個(gè)時(shí)間段,比如晚上20點(diǎn)到23點(diǎn),分配一個(gè)較大的資源,然后在其他時(shí)間段分配一個(gè)較小的資源。這種方式一定程度上能夠滿足搜索系統(tǒng)的使用需求。但是也造成了系統(tǒng)的不穩(wěn)定性,試想一下,當(dāng)在非高峰期有一個(gè)突增的流量,勢(shì)必會(huì)導(dǎo)致系統(tǒng)的負(fù)載不足,從而造成系統(tǒng)服務(wù)能力不夠等影響。同時(shí)該方案的資源利用率也不夠高,流量低峰的時(shí)候資源未能得到完全的利用。

第三種使用的方案與第一種比較類似,它在第一種固定額度分配的基礎(chǔ)上,針對(duì)離線的任務(wù)進(jìn)行了一定程度的超賣,即實(shí)際只有n個(gè)cpu和m個(gè)內(nèi)存,可以按照1:1.3:甚至1:2.0的比例進(jìn)行分配。這樣表面上可以在低峰期分配上較多的資源,但是,在高峰期仍然會(huì)造成不穩(wěn)定的影響。系統(tǒng)的高峰期負(fù)載已經(jīng)很高了,這時(shí)如果按照超賣的策略又分配了一部分任務(wù),很有可能導(dǎo)致系統(tǒng)資源的不足和訪問(wèn)延遲的增高。

上述三種方案都不能充分利用分布式系統(tǒng)所能提供的資源,由此,需要一種更加優(yōu)化的調(diào)度方案以提高分布式系統(tǒng)的資源的利用率。



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

本發(fā)明主要解決的一個(gè)技術(shù)問(wèn)題是,提供一種分布式系統(tǒng)、分布式系統(tǒng)的調(diào)度方法及調(diào)度裝置,其能夠在保證高優(yōu)先級(jí)任務(wù)正常運(yùn)行的前提下,充分利用調(diào)度系統(tǒng)的空閑資源運(yùn)行低優(yōu)先級(jí)任務(wù),以提高分布式系統(tǒng)的資源利用率。

根據(jù)本發(fā)明的一個(gè)方面,提供了一種分布式系統(tǒng)的調(diào)度方法,分布式系統(tǒng)包括用于運(yùn)行任務(wù)的業(yè)務(wù)節(jié)點(diǎn),任務(wù)包括高優(yōu)先級(jí)任務(wù)和低優(yōu)先級(jí)任務(wù),該方法包括:周期性地獲取業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的一個(gè)或多個(gè)任務(wù)各自的當(dāng)前資源占用信息;根據(jù)業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的高優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第一資源占用量,確定該業(yè)務(wù)節(jié)點(diǎn)能夠用于運(yùn)行低優(yōu)先級(jí)任務(wù)的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量;以及根據(jù)當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量和該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第二資源占用量,調(diào)整該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)的資源占用量。

由此,對(duì)于分布式系統(tǒng)中的業(yè)務(wù)節(jié)點(diǎn),可以根據(jù)確定的該業(yè)務(wù)節(jié)點(diǎn)的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量和該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的資源量,調(diào)整該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)的資源占用量,以使得經(jīng)過(guò)調(diào)整后該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)的資源占用量可以接近但不大于當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量。這樣可以在保證高優(yōu)先級(jí)任務(wù)正常運(yùn)行的情況下,充分利用業(yè)務(wù)節(jié)點(diǎn)空余的資源量運(yùn)行低優(yōu)先級(jí)任務(wù),提高業(yè)務(wù)節(jié)點(diǎn)的資源利用率。

優(yōu)選地,當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量是基于高優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第一資源占用量、高優(yōu)先級(jí)任務(wù)所請(qǐng)求的高峰期資源占用量以及該業(yè)務(wù)節(jié)點(diǎn)所擁有的總資源量確定的。

優(yōu)選地,當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量p是根據(jù)下述公式計(jì)算得到的:

其中,α為業(yè)務(wù)節(jié)點(diǎn)所能提供的總資源量,β為高優(yōu)先級(jí)任務(wù)所請(qǐng)求的高峰期資源占用量,β'為高優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第一資源占用量,c為表示高優(yōu)先級(jí)任務(wù)在高峰期的資源占用量占總資源量的比例的設(shè)定系數(shù)。

優(yōu)選地,該調(diào)度方法還可以包括:響應(yīng)于新提交的高優(yōu)先級(jí)任務(wù)請(qǐng)求,將高優(yōu)先級(jí)任務(wù)分配給預(yù)定業(yè)務(wù)節(jié)點(diǎn)或能夠處理該高優(yōu)先級(jí)任務(wù)的業(yè)務(wù)節(jié)點(diǎn);以及響應(yīng)于新提交的低優(yōu)先級(jí)任務(wù)請(qǐng)求,將低優(yōu)先級(jí)任務(wù)分配給當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量不小于該低優(yōu)先級(jí)任務(wù)所請(qǐng)求的資源占用量的業(yè)務(wù)節(jié)點(diǎn),在所有業(yè)務(wù)節(jié)點(diǎn)的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量都小于該低優(yōu)先級(jí)任務(wù)所請(qǐng)求的資源占用量的情況下,將低優(yōu)先級(jí)任務(wù)放入等待隊(duì)列。

由此,對(duì)于新提交的高優(yōu)先級(jí)任務(wù),可以將其分配給調(diào)度系統(tǒng)中預(yù)定的業(yè)務(wù)節(jié)點(diǎn)或能夠處理該高優(yōu)先級(jí)任務(wù)的業(yè)務(wù)節(jié)點(diǎn);對(duì)于新提交的低優(yōu)先級(jí)任務(wù),可以將其分配給調(diào)度系統(tǒng)中當(dāng)前低優(yōu)先級(jí)任務(wù)可用量大于新提交的低優(yōu)先級(jí)任務(wù)所請(qǐng)求的資源占用量的業(yè)務(wù)節(jié)點(diǎn),在沒(méi)有符合條件的業(yè)務(wù)節(jié)點(diǎn)時(shí),可以將低優(yōu)先級(jí)任務(wù)放入等待隊(duì)列。

優(yōu)選地,分布式系統(tǒng)還包括調(diào)度節(jié)點(diǎn);業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的任務(wù)以預(yù)定周期分別向調(diào)度節(jié)點(diǎn)發(fā)送資源占用信息;并且調(diào)度節(jié)點(diǎn)執(zhí)行獲取當(dāng)前資源占用信息的步驟和確定當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量的步驟,并根據(jù)當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量和第二資源占用量向業(yè)務(wù)節(jié)點(diǎn)發(fā)送調(diào)度指令。

優(yōu)選地,分布式系統(tǒng)包括多個(gè)業(yè)務(wù)節(jié)點(diǎn),調(diào)度節(jié)點(diǎn)通過(guò)發(fā)送調(diào)度指令,在多個(gè)業(yè)務(wù)節(jié)點(diǎn)之間分配任務(wù)。

優(yōu)選地,業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的節(jié)點(diǎn)系統(tǒng)任務(wù)根據(jù)調(diào)度指令對(duì)低優(yōu)先級(jí)任務(wù)所占用的資源進(jìn)行調(diào)整。

根據(jù)本發(fā)明的另一個(gè)方面,還提供了一種分布式系統(tǒng),包括調(diào)度節(jié)點(diǎn)和至少一個(gè)用于運(yùn)行任務(wù)的業(yè)務(wù)節(jié)點(diǎn),任務(wù)包括高優(yōu)先級(jí)任務(wù)和低優(yōu)先級(jí)任務(wù),其中,業(yè)務(wù)節(jié)點(diǎn)周期性地向調(diào)度節(jié)點(diǎn)發(fā)送其上運(yùn)行的一個(gè)或多個(gè)任務(wù)各自的當(dāng)前資源占用信息;調(diào)度節(jié)點(diǎn)根據(jù)業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的高優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第一資源占用量,確定該業(yè)務(wù)節(jié)點(diǎn)能夠用于運(yùn)行低優(yōu)先級(jí)任務(wù)的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量;并且調(diào)度節(jié)點(diǎn)根據(jù)當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量和該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第二資源占用量,向業(yè)務(wù)節(jié)點(diǎn)發(fā)送調(diào)度指令,以調(diào)整該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)的資源占用量。

優(yōu)選地,調(diào)度節(jié)點(diǎn)基于高優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第一資源占用量、高優(yōu)先級(jí)任務(wù)所請(qǐng)求的高峰期資源占用量以及該業(yè)務(wù)節(jié)點(diǎn)所擁有的總資源量,確定當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量。

優(yōu)選地,調(diào)度節(jié)點(diǎn)根據(jù)下述公式計(jì)算得到當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量p:

其中,α為業(yè)務(wù)節(jié)點(diǎn)所能提供的總資源量,β為高優(yōu)先級(jí)任務(wù)所請(qǐng)求的高峰期資源占用量,β'為高優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第一資源占用量,c為表示高優(yōu)先級(jí)任務(wù)在高峰期的資源占用量占總資源量的比例的設(shè)定系數(shù)。

優(yōu)選地,調(diào)度節(jié)點(diǎn)響應(yīng)于新提交的高優(yōu)先級(jí)任務(wù)請(qǐng)求,向預(yù)定業(yè)務(wù)節(jié)點(diǎn)或能夠處理該高優(yōu)先級(jí)任務(wù)的業(yè)務(wù)節(jié)點(diǎn)發(fā)送調(diào)度指令,以將高優(yōu)先級(jí)任務(wù)分配給該業(yè)務(wù)節(jié)點(diǎn);并且調(diào)度節(jié)點(diǎn)響應(yīng)于新提交的低優(yōu)先級(jí)任務(wù)請(qǐng)求,向當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量不小于該低優(yōu)先級(jí)任務(wù)所請(qǐng)求的資源占用量的業(yè)務(wù)節(jié)點(diǎn)發(fā)送調(diào)度指令,以將低優(yōu)先級(jí)任務(wù)分配給該業(yè)務(wù)節(jié)點(diǎn),在所有業(yè)務(wù)節(jié)點(diǎn)的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量都小于該低優(yōu)先級(jí)任務(wù)所請(qǐng)求的資源占用量的情況下,將低優(yōu)先級(jí)任務(wù)放入等待隊(duì)列。

優(yōu)選地,業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的節(jié)點(diǎn)系統(tǒng)任務(wù)根據(jù)調(diào)度指令對(duì)低優(yōu)先級(jí)任務(wù)所占用的資源進(jìn)行調(diào)整。

根據(jù)本發(fā)明的另一個(gè)方面,還提供了一種分布式系統(tǒng)的調(diào)度裝置,分布式系統(tǒng)包括用于運(yùn)行任務(wù)的業(yè)務(wù)節(jié)點(diǎn),任務(wù)包括高優(yōu)先級(jí)任務(wù)和低優(yōu)先級(jí)任務(wù),該裝置包括:信息獲取裝置,用于周期性地獲取業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的一個(gè)或多個(gè)任務(wù)各自的當(dāng)前資源占用信息;可用資源量確定裝置,用于根據(jù)業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的高優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第一資源占用量,確定該業(yè)務(wù)節(jié)點(diǎn)能夠用于運(yùn)行低優(yōu)先級(jí)任務(wù)的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量;以及資源調(diào)整裝置,用于根據(jù)當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量和該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第二資源占用量,調(diào)整該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)的資源占用量。

優(yōu)選地,可用資源量確定裝置基于高優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第一資源占用量、高優(yōu)先級(jí)任務(wù)所請(qǐng)求的高峰期資源占用量以及該業(yè)務(wù)節(jié)點(diǎn)所擁有的總資源量,確定當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量。

優(yōu)選地,可用資源量確定裝置根據(jù)下述公式計(jì)算得到當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量p:其中,α為業(yè)務(wù)節(jié)點(diǎn)所能提供的總資源量,β為高優(yōu)先級(jí)任務(wù)所請(qǐng)求的高峰期資源占用量,β'為高優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第一資源占用量,c為表示高優(yōu)先級(jí)任務(wù)在高峰期的資源占用量占總資源量的比例的設(shè)定系數(shù)。

優(yōu)選地,該調(diào)度裝置還可以包括:高優(yōu)先級(jí)任務(wù)分配裝置,用于響應(yīng)于新提交的高優(yōu)先級(jí)任務(wù)請(qǐng)求,將高優(yōu)先級(jí)任務(wù)分配給預(yù)定業(yè)務(wù)節(jié)點(diǎn)或能夠處理該高優(yōu)先級(jí)任務(wù)的業(yè)務(wù)節(jié)點(diǎn);以及低優(yōu)先級(jí)任務(wù)分配裝置,用于響應(yīng)于新提交的低優(yōu)先級(jí)任務(wù)請(qǐng)求,將低優(yōu)先級(jí)任務(wù)分配給當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量不小于該低優(yōu)先級(jí)任務(wù)所請(qǐng)求的資源占用量的業(yè)務(wù)節(jié)點(diǎn),在所有業(yè)務(wù)節(jié)點(diǎn)的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量都小于該低優(yōu)先級(jí)任務(wù)所請(qǐng)求的資源占用量的情況下,將低優(yōu)先級(jí)任務(wù)放入等待隊(duì)列。

利用本發(fā)明的分布式系統(tǒng)及其調(diào)度方法和調(diào)度裝置,可以根據(jù)確定的該業(yè)務(wù)節(jié)點(diǎn)的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量和該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的資源量,調(diào)整該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)的資源占用量,以使得經(jīng)過(guò)調(diào)整后該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)的資源占用量可以接近但不大于當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量。這樣可以在保證高優(yōu)先級(jí)任務(wù)正常運(yùn)行的情況下,充分利用業(yè)務(wù)節(jié)點(diǎn)空余的資源量運(yùn)行低優(yōu)先級(jí)任務(wù),提高業(yè)務(wù)節(jié)點(diǎn)的資源利用率。

附圖說(shuō)明

通過(guò)結(jié)合附圖對(duì)本公開(kāi)示例性實(shí)施方式進(jìn)行更詳細(xì)的描述,本公開(kāi)的上述以及其它目的、特征和優(yōu)勢(shì)將變得更加明顯,其中,在本公開(kāi)示例性實(shí)施方式中,相同的參考標(biāo)號(hào)通常代表相同部件。

圖1是示出了根據(jù)本發(fā)明一實(shí)施例的分布式系統(tǒng)的功能框圖。

圖2是示出了根據(jù)本發(fā)明一實(shí)施例的分布式系統(tǒng)的調(diào)度方法的示意性流程圖。

圖3是示出了根據(jù)本發(fā)明一實(shí)施例的分布式系統(tǒng)的調(diào)度裝置的示意性流程圖。

具體實(shí)施方式

下面將參照附圖更詳細(xì)地描述本公開(kāi)的優(yōu)選實(shí)施方式。雖然附圖中顯示了本公開(kāi)的優(yōu)選實(shí)施方式,然而應(yīng)該理解,可以以各種形式實(shí)現(xiàn)本公開(kāi)而不應(yīng)被這里闡述的實(shí)施方式所限制。相反,提供這些實(shí)施方式是為了使本公開(kāi)更加透徹和完整,并且能夠?qū)⒈竟_(kāi)的范圍完整地傳達(dá)給本領(lǐng)域的技術(shù)人員。

如前所述,對(duì)于分布式系統(tǒng)來(lái)說(shuō),其運(yùn)行的高優(yōu)先級(jí)任務(wù)所占用的資源經(jīng)常是動(dòng)態(tài)變化的,而分布式系統(tǒng)所提供的資源量一般與高優(yōu)先級(jí)任務(wù)在高峰期運(yùn)行所需求的資源量相當(dāng),因此如果分布式系統(tǒng)僅運(yùn)行高優(yōu)先級(jí)任務(wù),則無(wú)疑會(huì)降低分布式系統(tǒng)的資源利用率。針對(duì)于此,本發(fā)明提出了一種適用于分布式系統(tǒng)的調(diào)度方案,其可以根據(jù)運(yùn)行在調(diào)度系統(tǒng)中的業(yè)務(wù)節(jié)點(diǎn)上的任務(wù)的資源占用信息,確定該業(yè)務(wù)節(jié)點(diǎn)能夠用于運(yùn)行低優(yōu)先級(jí)任務(wù)的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量,并根據(jù)運(yùn)行在該業(yè)務(wù)節(jié)點(diǎn)上的低優(yōu)先級(jí)任務(wù)實(shí)際占用的資源量,調(diào)整該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)的資源占用量,以使得經(jīng)過(guò)調(diào)整后該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)的資源占用量可以接近但不大于當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量。由此可以提高業(yè)務(wù)節(jié)點(diǎn)的資源利用率,從而可以提高分布式系統(tǒng)的資源利用率。

下面將參照?qǐng)D1至圖3來(lái)具體地描述本發(fā)明的實(shí)施例。圖1是示出了根據(jù)本發(fā)明一實(shí)施例的分布式系統(tǒng)100的功能框圖。

如圖1所示,分布式系統(tǒng)100包括調(diào)度節(jié)點(diǎn)110和一個(gè)或多個(gè)業(yè)務(wù)節(jié)點(diǎn)120。業(yè)務(wù)節(jié)點(diǎn)120可以用于運(yùn)行任務(wù),在本發(fā)明中,運(yùn)行在業(yè)務(wù)節(jié)點(diǎn)120上的任務(wù)可以包括高優(yōu)先級(jí)任務(wù)和低優(yōu)先級(jí)任務(wù),高優(yōu)先級(jí)任務(wù)可以是滿足生產(chǎn)所需的生產(chǎn)任務(wù),例如可以是在線任務(wù),低優(yōu)先級(jí)任務(wù)可以是非生產(chǎn)任務(wù),例如可以是離線任務(wù)。

調(diào)度節(jié)點(diǎn)110和業(yè)務(wù)節(jié)點(diǎn)120均可以部署在服務(wù)器中。作為優(yōu)選實(shí)施例,不同的業(yè)務(wù)節(jié)點(diǎn)120可以部署在不同的服務(wù)器中,并且調(diào)度節(jié)點(diǎn)110可以部署在不同于業(yè)務(wù)節(jié)點(diǎn)120的一個(gè)獨(dú)立的服務(wù)器中,也可以和其中一個(gè)業(yè)務(wù)節(jié)點(diǎn)120部署在同一個(gè)服務(wù)器中。

調(diào)度節(jié)點(diǎn)110可以通過(guò)發(fā)送調(diào)度指令,在多個(gè)業(yè)務(wù)節(jié)點(diǎn)120之間分配任務(wù)。

具體地,業(yè)務(wù)節(jié)點(diǎn)120可以周期性地向調(diào)度節(jié)點(diǎn)110發(fā)送其上運(yùn)行的一個(gè)或多個(gè)任務(wù)各自的當(dāng)前資源占用信息,調(diào)度節(jié)點(diǎn)110可以根據(jù)接收到來(lái)自業(yè)務(wù)節(jié)點(diǎn)120的一個(gè)或多個(gè)任務(wù)各自的當(dāng)前資源占用信息,向業(yè)務(wù)節(jié)點(diǎn)120發(fā)送調(diào)度指令,業(yè)務(wù)節(jié)點(diǎn)120根據(jù)調(diào)度指令可以調(diào)整該業(yè)務(wù)節(jié)點(diǎn)120上運(yùn)行的低優(yōu)先級(jí)任務(wù)的資源占用量。具體地,業(yè)務(wù)節(jié)點(diǎn)120上可以運(yùn)行節(jié)點(diǎn)系統(tǒng)任務(wù),節(jié)點(diǎn)系統(tǒng)任務(wù)可以根據(jù)調(diào)度指令對(duì)低優(yōu)先級(jí)任務(wù)所占用的資源進(jìn)行調(diào)整。

調(diào)度節(jié)點(diǎn)110的具體處理過(guò)程可以參見(jiàn)圖2,圖2是示出了根據(jù)本發(fā)明一實(shí)施例的分布式系統(tǒng)的調(diào)度方法的示意性流程圖。

參見(jiàn)圖2,方法200開(kāi)始于步驟s210,周期性地獲取業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的一個(gè)或多個(gè)任務(wù)各自的當(dāng)前資源占用信息。運(yùn)行在業(yè)務(wù)節(jié)點(diǎn)上的任務(wù)可以包括高優(yōu)先級(jí)任務(wù)和低優(yōu)先級(jí)任務(wù),因此從業(yè)務(wù)節(jié)點(diǎn)獲取的當(dāng)前資源占用信息可以包括運(yùn)行在該業(yè)務(wù)節(jié)點(diǎn)上的高優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第一以占用量和運(yùn)行在該業(yè)務(wù)節(jié)點(diǎn)上的低優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第二資源占用量。其中,在業(yè)務(wù)節(jié)點(diǎn)上沒(méi)有運(yùn)行低優(yōu)先級(jí)任務(wù)時(shí),第二資源占用量為零。

接下來(lái)在步驟s220,根據(jù)業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的高優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第一資源占用量,確定該業(yè)務(wù)節(jié)點(diǎn)能夠用于運(yùn)行低優(yōu)先級(jí)任務(wù)的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量。其中,當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量可以是基于高優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第一資源占用量、高優(yōu)先級(jí)任務(wù)所請(qǐng)求的高峰期資源占用量以及該業(yè)務(wù)節(jié)點(diǎn)所擁有的總資源量確定的。

具體地,當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量p可以是根據(jù)下述公式計(jì)算得到的:

其中,α為業(yè)務(wù)節(jié)點(diǎn)所能提供的總資源量,β為高優(yōu)先級(jí)任務(wù)所請(qǐng)求的高峰期資源占用量,其具體數(shù)值可以根據(jù)實(shí)際經(jīng)驗(yàn)設(shè)定,β'為高優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第一資源占用量,一般來(lái)說(shuō),β'小于或等于β。其中當(dāng)一個(gè)業(yè)務(wù)節(jié)點(diǎn)執(zhí)行多個(gè)高優(yōu)先級(jí)任務(wù)時(shí),β和β'分別是這多個(gè)高優(yōu)先級(jí)任務(wù)的所請(qǐng)求高峰期資源占用量總和和當(dāng)前占用量總和。c為表示高優(yōu)先級(jí)任務(wù)在高峰期的資源占用量占總資源量的比例的設(shè)定系數(shù),其用于指示高優(yōu)先級(jí)任務(wù)在高峰期時(shí)能夠占有總資源量的占有比例。舉例來(lái)說(shuō),如果高峰期時(shí)只運(yùn)行高優(yōu)先級(jí)任務(wù)的話,表明高優(yōu)先級(jí)任務(wù)在高峰期時(shí)占有總資源量的占有比例為1,此時(shí)c設(shè)置為1,由此當(dāng)高優(yōu)先級(jí)任務(wù)的實(shí)際占用的資源與高峰期資源相同的時(shí)候,低優(yōu)先級(jí)任務(wù)的可用資源量p就會(huì)下降到0。再例如,c也可以設(shè)置為0.8,表明高優(yōu)先級(jí)任務(wù)在高峰期時(shí)占有總資源量的占有比例為0.8,此時(shí)當(dāng)高優(yōu)先級(jí)任務(wù)的實(shí)際占用的資源與高峰期資源相同的時(shí)候,低優(yōu)先級(jí)任務(wù)的可用資源量p就會(huì)下降到0.2α。

在確定了業(yè)務(wù)節(jié)點(diǎn)的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量后,就可以執(zhí)行步驟s230,根據(jù)當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量和該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第二資源占用量,調(diào)整該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)的資源占用量。此處調(diào)整的目的在于充分利用業(yè)務(wù)節(jié)點(diǎn)當(dāng)前多能提供的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量,即使得調(diào)整后,業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)所占用的資源占用量接近但不大于步驟s220所確定的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量。

具體地,在步驟s210確定的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量較小,而業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第二資源占用量大于當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量時(shí),則可以向該業(yè)務(wù)節(jié)點(diǎn)發(fā)送調(diào)度指令,以指令業(yè)務(wù)節(jié)點(diǎn)減少運(yùn)行在其上的低優(yōu)先級(jí)任務(wù)的資源的占用,或者直接停止低優(yōu)先級(jí)任務(wù)以釋放資源。另外,如果業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第二資源小于步驟s210確定的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量,則可以指令業(yè)務(wù)節(jié)點(diǎn)適當(dāng)增加低優(yōu)先級(jí)任務(wù)的資源占用量(例如可以增加線程數(shù)和處理能力)。由此利用本發(fā)明可以根據(jù)業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的高優(yōu)先級(jí)任務(wù)的實(shí)際占用資源信息,確定能夠用于運(yùn)行低優(yōu)先級(jí)任務(wù)的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量,根據(jù)當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量調(diào)整該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)的資源占用量,以充分利用業(yè)務(wù)節(jié)點(diǎn)所提供的資源量。

綜上,本發(fā)明在保證了業(yè)務(wù)節(jié)點(diǎn)上高優(yōu)先級(jí)任務(wù)優(yōu)先正常運(yùn)行的同時(shí),還可以根據(jù)業(yè)務(wù)節(jié)點(diǎn)所能提供的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量以及該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的資源占用量,對(duì)該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)的資源占用量進(jìn)行調(diào)整,以在不影響高優(yōu)先級(jí)任務(wù)運(yùn)行的同時(shí),充分利用業(yè)務(wù)節(jié)點(diǎn)的資源量。

至此,結(jié)合圖2詳細(xì)說(shuō)明了調(diào)度節(jié)點(diǎn)110可以執(zhí)行的調(diào)度方法的具體流程。其中,圖2示出的是根據(jù)業(yè)務(wù)節(jié)點(diǎn)120上運(yùn)行的任務(wù)的當(dāng)前資源占用信息,對(duì)該業(yè)務(wù)節(jié)點(diǎn)120上運(yùn)行的低優(yōu)先級(jí)任務(wù)進(jìn)行調(diào)整。另外,調(diào)度節(jié)點(diǎn)110還可以根據(jù)新提交的任務(wù)請(qǐng)求,將任務(wù)分配給調(diào)度系統(tǒng)中適合的業(yè)務(wù)節(jié)點(diǎn)120。

具體地,對(duì)于新提交的高優(yōu)先級(jí)任務(wù)請(qǐng)求,調(diào)度節(jié)點(diǎn)可以將高優(yōu)先級(jí)任務(wù)分配給預(yù)定業(yè)務(wù)節(jié)點(diǎn)或能夠處理該高優(yōu)先級(jí)任務(wù)的業(yè)務(wù)節(jié)點(diǎn)。由此,可以預(yù)先指定各高優(yōu)先級(jí)任務(wù)所對(duì)應(yīng)的業(yè)務(wù)節(jié)點(diǎn),在提交新的高優(yōu)先級(jí)任務(wù)時(shí),就可以將該高優(yōu)先級(jí)任務(wù)分配給對(duì)應(yīng)的業(yè)務(wù)節(jié)點(diǎn)。另外,也可以響應(yīng)于新提交的高優(yōu)先級(jí)任務(wù)請(qǐng)求,尋找分布式系統(tǒng)中能夠處理該高優(yōu)先級(jí)任務(wù)的業(yè)務(wù)節(jié)點(diǎn),將該高優(yōu)先級(jí)任務(wù)分配給能夠處理的業(yè)務(wù)節(jié)點(diǎn)。其中,調(diào)度節(jié)點(diǎn)可以通過(guò)向業(yè)務(wù)節(jié)點(diǎn)發(fā)送調(diào)度指令以實(shí)現(xiàn)高優(yōu)先級(jí)任務(wù)的分配。

對(duì)于新提交的低優(yōu)先級(jí)任務(wù)請(qǐng)求,調(diào)度節(jié)點(diǎn)可以將低優(yōu)先級(jí)任務(wù)分配給當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量不小于該低優(yōu)先級(jí)任務(wù)所請(qǐng)求的資源占用量的業(yè)務(wù)節(jié)點(diǎn),在所有業(yè)務(wù)節(jié)點(diǎn)的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量都小于該低優(yōu)先級(jí)任務(wù)所請(qǐng)求的資源占用量的情況下,將低優(yōu)先級(jí)任務(wù)放入等待隊(duì)列。

由此對(duì)于新提交的低優(yōu)先級(jí)任務(wù)請(qǐng)求,調(diào)度節(jié)點(diǎn)可以首先判斷或?qū)ふ艺{(diào)度系統(tǒng)中是否存在當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量不小于該低優(yōu)先級(jí)任務(wù)所請(qǐng)求的資源占用量的業(yè)務(wù)節(jié)點(diǎn),在判定存在或?qū)ふ业降那闆r下分配,在判定不存在或者尋找不到的情況下,放入等待隊(duì)列。

圖3是示出了根據(jù)本發(fā)明一實(shí)施例的分布式系統(tǒng)的調(diào)度裝置的功能框圖。其中,調(diào)度裝置300的功能模塊可以由實(shí)現(xiàn)本發(fā)明原理的硬件、軟件或硬件和軟件的結(jié)合來(lái)實(shí)現(xiàn)。本領(lǐng)域技術(shù)人員可以理解的是,圖3所描述的功能模塊可以組合起來(lái)或者劃分成子模塊,從而實(shí)現(xiàn)上述發(fā)明的原理。因此,本文的描述可以支持對(duì)本文描述的功能模塊的任何可能的組合、或者劃分、或者更進(jìn)一步的限定。

圖3所示的調(diào)度裝置300可以用來(lái)實(shí)現(xiàn)圖2所示的調(diào)度方法,下面僅就調(diào)度裝置300可以具有的功能模塊以及各功能模塊可以執(zhí)行的操作做簡(jiǎn)要說(shuō)明,對(duì)于其中涉及的細(xì)節(jié)部分可以參見(jiàn)上文結(jié)合圖2、圖3的描述,這里不再贅述。

參見(jiàn)圖3,調(diào)度裝置300包括信息獲取裝置310、可用資源量確定裝置320以及資源調(diào)整裝置330。

信息獲取裝置310用于周期性地獲取業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的一個(gè)或多個(gè)任務(wù)各自的當(dāng)前資源占用信息。

可用資源量確定裝置320用于根據(jù)業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的高優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第一資源占用量,確定該業(yè)務(wù)節(jié)點(diǎn)能夠用于運(yùn)行低優(yōu)先級(jí)任務(wù)的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量。

在本發(fā)明一個(gè)可選實(shí)施例中,可用資源量確定裝置320可以基于高優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第一資源占用量、高優(yōu)先級(jí)任務(wù)所請(qǐng)求的高峰期資源占用量以及該業(yè)務(wù)節(jié)點(diǎn)所擁有的總資源量,確定當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量。

具體地,可用資源量確定裝置420可以根據(jù)下述公式計(jì)算得到當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量p:

其中,α為業(yè)務(wù)節(jié)點(diǎn)所能提供的總資源量,β為高優(yōu)先級(jí)任務(wù)所請(qǐng)求的高峰期資源占用量,β'為高優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第一資源占用量,c為表示高優(yōu)先級(jí)任務(wù)在高峰期的資源占用量占總資源量的比例的設(shè)定系數(shù)。

資源調(diào)整裝置330用于根據(jù)當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量和該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)當(dāng)前實(shí)際占用的第二資源占用量,調(diào)整該業(yè)務(wù)節(jié)點(diǎn)上運(yùn)行的低優(yōu)先級(jí)任務(wù)的資源占用量。

如圖3所示,調(diào)度裝置300還可以可選地包括高優(yōu)先級(jí)任務(wù)分配裝置350和低優(yōu)先級(jí)任務(wù)分配裝置370。

高優(yōu)先級(jí)任務(wù)分配裝置350用于響應(yīng)于新提交的高優(yōu)先級(jí)任務(wù)請(qǐng)求,將高優(yōu)先級(jí)任務(wù)分配給預(yù)定業(yè)務(wù)節(jié)點(diǎn)或能夠處理該高優(yōu)先級(jí)任務(wù)的業(yè)務(wù)節(jié)點(diǎn)。

低優(yōu)先級(jí)任務(wù)分配裝置370用于響應(yīng)于新提交的低優(yōu)先級(jí)任務(wù)請(qǐng)求,將低優(yōu)先級(jí)任務(wù)分配給當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量不小于該低優(yōu)先級(jí)任務(wù)所請(qǐng)求的資源占用量的業(yè)務(wù)節(jié)點(diǎn),在所有業(yè)務(wù)節(jié)點(diǎn)的當(dāng)前低優(yōu)先級(jí)任務(wù)可用資源量都小于該低優(yōu)先級(jí)任務(wù)所請(qǐng)求的資源占用量的情況下,將低優(yōu)先級(jí)任務(wù)放入等待隊(duì)列。

上文中已經(jīng)參考附圖詳細(xì)描述了根據(jù)本發(fā)明的分布式系統(tǒng)及其調(diào)度方法和調(diào)度裝置。如下將給出利用本發(fā)明調(diào)度方案的一個(gè)具體應(yīng)用。

本應(yīng)用例的具體實(shí)現(xiàn)過(guò)程如下。

101、初始化設(shè)置

假設(shè)有1個(gè)調(diào)度節(jié)點(diǎn),下面分別對(duì)應(yīng)著m臺(tái)機(jī)器,每臺(tái)機(jī)器可以認(rèn)為是一個(gè)業(yè)務(wù)節(jié)點(diǎn),每臺(tái)機(jī)器上可以運(yùn)行多個(gè)具有不同優(yōu)先級(jí)的任務(wù),運(yùn)行在機(jī)器上的任務(wù)按照優(yōu)先級(jí)大小可以分為生產(chǎn)任務(wù)、非生產(chǎn)任務(wù)和系統(tǒng)任務(wù)。系統(tǒng)任務(wù)可以用來(lái)監(jiān)視機(jī)器上非系統(tǒng)任務(wù)(生成任務(wù)和非生產(chǎn)任務(wù))的運(yùn)行,可以停止和啟動(dòng)其他的任務(wù)。在本實(shí)施例的運(yùn)行場(chǎng)景中,首先必須要保證生產(chǎn)任務(wù)的正常運(yùn)行,在此基礎(chǔ)上,盡可能了利用整臺(tái)機(jī)器的資源,提高資源利用率。同時(shí),本實(shí)施例對(duì)于優(yōu)先級(jí)進(jìn)行了簡(jiǎn)化處理,只處理生產(chǎn)任務(wù)和非生產(chǎn)任務(wù)。

102、心跳的匯報(bào)

在本提案中每臺(tái)機(jī)器上運(yùn)行的每一個(gè)任務(wù)都會(huì)匯報(bào)自己的心跳到調(diào)度節(jié)點(diǎn)上,該心跳信息包括了該任務(wù)的cpu的占用情況、任務(wù)的內(nèi)存的占用情況等等。

103、任務(wù)的提交

對(duì)于生產(chǎn)任務(wù)來(lái)將,任務(wù)提交的時(shí)候可以直接搶占非生產(chǎn)任務(wù)的資源,這樣提交的時(shí)間按照高峰期的資源需求進(jìn)行提交即可。對(duì)于非生產(chǎn)任務(wù)來(lái)講,則會(huì)選擇運(yùn)行完生產(chǎn)任務(wù)后,額外剩余的實(shí)際資源下進(jìn)行分配。該地方與固定額度分配不一樣的情況是,這里分配依據(jù)的是實(shí)際占用后剩余的資源,而不是按照資源描述的資源。比如說(shuō),有一臺(tái)機(jī)器有32核,128g的內(nèi)存可以供使用,已經(jīng)分配了一個(gè)生產(chǎn)任務(wù),它的高峰期資源需求是24核,100g內(nèi)存,當(dāng)時(shí)當(dāng)前只占用了12核,50g內(nèi)存。這個(gè)時(shí)候有一個(gè)離線任務(wù)申請(qǐng)16核,60g內(nèi)存,按照本方案是可以進(jìn)行申請(qǐng)的。

104、多優(yōu)先級(jí)的服務(wù)能力計(jì)算

對(duì)于生產(chǎn)任務(wù)來(lái)講,它的服務(wù)能力就是它自己描述的高峰期資源需求。也就是說(shuō),當(dāng)流量負(fù)載高的時(shí)候,它是最多可以使用它描述的所有資源。對(duì)于非生產(chǎn)任務(wù)來(lái)講,它的服務(wù)能力p計(jì)算方法如下:

公式中的系數(shù)用于指示高峰期運(yùn)行生產(chǎn)任務(wù)時(shí),生產(chǎn)任務(wù)占用總服務(wù)能力的比例。如果高峰期資源時(shí)只供生產(chǎn)任務(wù)的話,那么系數(shù)可以設(shè)置為1。這樣當(dāng)生產(chǎn)任務(wù)的實(shí)際占用的資源與高峰期資源相同的時(shí)候,非生產(chǎn)任務(wù)的服務(wù)能力就會(huì)下降到0,即不服務(wù)的狀態(tài)。

105、對(duì)非生產(chǎn)任務(wù)的調(diào)整

當(dāng)非生產(chǎn)任務(wù)的當(dāng)前占用的資源超過(guò)了計(jì)算出來(lái)的服務(wù)能力,那么就會(huì)通知在該任務(wù)所在的機(jī)器上面的系統(tǒng)任務(wù)進(jìn)行處理,可以通知其減少資源的占用,甚至直接停止該任務(wù)釋放資源。如果占用的資源小于計(jì)算出來(lái)的服務(wù)能力,也可以通知該任務(wù)適當(dāng)增加線程數(shù)和處理能力,從而做到根據(jù)機(jī)器的實(shí)際負(fù)載動(dòng)態(tài)調(diào)整,最大限度的利用資源。

如下以分布式系統(tǒng)為搜索系統(tǒng)為例,說(shuō)明利用本發(fā)明后的調(diào)度過(guò)程,如下場(chǎng)景假設(shè)搜索系統(tǒng)中每臺(tái)機(jī)器上只運(yùn)行一個(gè)生產(chǎn)任務(wù)和一個(gè)非生產(chǎn)任務(wù),該非生產(chǎn)任務(wù)的資源可以動(dòng)態(tài)進(jìn)行控制。

1、流量從低峰期到高峰期,隨著流量的增加,由于生產(chǎn)任務(wù)的服務(wù)能力等于其設(shè)定的高峰服務(wù)能力值,其實(shí)際占用的資源在一直增加,這時(shí)該機(jī)器上的非生產(chǎn)任務(wù)的服務(wù)能力會(huì)逐漸下降,這樣就可以動(dòng)態(tài)調(diào)整該非生產(chǎn)任務(wù)的資源占用情況。從而達(dá)到,在高峰期非生產(chǎn)任務(wù)的資源占用為0的目標(biāo)。在這種場(chǎng)景下,該機(jī)器的資源利用率幾乎是保持在高峰期的情況,同時(shí)也沒(méi)有影響生產(chǎn)任務(wù)的運(yùn)行。

2、流量從高峰期到低峰期,隨著流量的下降,由于生產(chǎn)任務(wù)的服務(wù)能力實(shí)際占用的資源在一直下降,這時(shí)該機(jī)器上的非生產(chǎn)任務(wù)的服務(wù)能力會(huì)逐漸上升,這樣就可以動(dòng)態(tài)調(diào)整該非生產(chǎn)任務(wù)的資源占用情況。從而達(dá)到,在低峰期非生產(chǎn)任務(wù)的資源上升的情況。在這種場(chǎng)景下,該機(jī)器的資源利用率也能夠是保持在高峰期的情況,同時(shí)也沒(méi)有影響生產(chǎn)任務(wù)的運(yùn)行。

在實(shí)際使用中,通過(guò)對(duì)大量的搜索機(jī)器進(jìn)行壓力測(cè)試,通過(guò)只允許運(yùn)行生產(chǎn)任務(wù)和生產(chǎn)任務(wù)與非生產(chǎn)任務(wù)同時(shí)運(yùn)行兩種情況進(jìn)行對(duì)比分析發(fā)現(xiàn)。在較高流量的情況下,兩種情況下的平均查詢延遲基本一致??梢哉f(shuō)明,利用本發(fā)明的調(diào)度方案沒(méi)有影響到生產(chǎn)任務(wù)的運(yùn)行,而同時(shí)運(yùn)行非生產(chǎn)任務(wù)則可以提高20%~30%的cpu利用率。

綜上,本發(fā)明的調(diào)度方案通過(guò)統(tǒng)計(jì)分析從不同的業(yè)務(wù)節(jié)點(diǎn)上匯報(bào)的資源占用情況,收集每一個(gè)任務(wù)的實(shí)際資源占用量,在此基礎(chǔ)上對(duì)不同的優(yōu)先級(jí)進(jìn)行了服務(wù)能力的計(jì)算,然后根據(jù)每一個(gè)任務(wù)上面計(jì)算出來(lái)的服務(wù)能力,能夠?qū)Ψ巧a(chǎn)任務(wù)的資源利用情況進(jìn)行動(dòng)態(tài)調(diào)整。通過(guò)動(dòng)態(tài)調(diào)整不同任務(wù)的資源,使得在不同的時(shí)段,生產(chǎn)任務(wù)實(shí)際能力動(dòng)態(tài)變化的情況下,非生產(chǎn)任務(wù)占用的資源能夠隨之動(dòng)態(tài)變化,從而達(dá)到了資源的最大化利用。而通過(guò)感應(yīng)生產(chǎn)任務(wù)實(shí)際資源占用的變化,能夠做到資源快速、動(dòng)態(tài)的調(diào)整,從而保證了非生產(chǎn)任務(wù)不影響生產(chǎn)任務(wù)的響應(yīng)時(shí)間等指標(biāo)。

此外,根據(jù)本發(fā)明的方法還可以實(shí)現(xiàn)為一種計(jì)算機(jī)程序,該計(jì)算機(jī)程序包括用于執(zhí)行本發(fā)明的上述方法中限定的上述各步驟的計(jì)算機(jī)程序代碼指令?;蛘撸鶕?jù)本發(fā)明的方法還可以實(shí)現(xiàn)為一種計(jì)算機(jī)程序產(chǎn)品,該計(jì)算機(jī)程序產(chǎn)品包括計(jì)算機(jī)可讀介質(zhì),在該計(jì)算機(jī)可讀介質(zhì)上存儲(chǔ)有用于執(zhí)行本發(fā)明的上述方法中限定的上述功能的計(jì)算機(jī)程序。本領(lǐng)域技術(shù)人員還將明白的是,結(jié)合這里的公開(kāi)所描述的各種示例性邏輯塊、模塊、電路和算法步驟可以被實(shí)現(xiàn)為電子硬件、計(jì)算機(jī)軟件或兩者的組合。

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

以上已經(jīng)描述了本發(fā)明的各實(shí)施例,上述說(shuō)明是示例性的,并非窮盡性的,并且也不限于所披露的各實(shí)施例。在不偏離所說(shuō)明的各實(shí)施例的范圍和精神的情況下,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō)許多修改和變更都是顯而易見(jiàn)的。本文中所用術(shù)語(yǔ)的選擇,旨在最好地解釋各實(shí)施例的原理、實(shí)際應(yīng)用或?qū)κ袌?chǎng)中的技術(shù)的改進(jìn),或者使本技術(shù)領(lǐng)域的其它普通技術(shù)人員能理解本文披露的各實(shí)施例。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
彭山县| 金昌市| 永清县| 辰溪县| 平阳县| 河津市| 庆元县| 大洼县| 饶平县| 始兴县| 林西县| 廉江市| 杭锦后旗| 玉溪市| 太白县| 阜新| 当涂县| 泾川县| 张家川| 富平县| 湖南省| 铁力市| 南川市| 闸北区| 陵川县| 中宁县| 龙江县| 莱西市| 连城县| 杭锦后旗| 冷水江市| 米泉市| 信宜市| 广水市| 铁岭县| 松溪县| 海兴县| 海晏县| 盐池县| 长顺县| 湖南省|