專利名稱:基于對象具有的表決資源的數(shù)量而標識對象的方法和設備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明的各實施方式涉及數(shù)據(jù)處理,并且更具體地涉及一種基于對象具有的表決資源(Quorum Resource)的數(shù)量而標識對象的方法、設備和相關(guān)計算機程序產(chǎn)品。
背景技術(shù):
隨著計算設備處理能力的提高,現(xiàn)有的計算設備能夠提供越來越強大的計算能力。然而,為了滿足廣大用戶不斷增長的需求,出現(xiàn)了其中存在大量的計算節(jié)點(例如,N 個計算節(jié)點,例如N >=32)的集群化的計算環(huán)境。出于各種原因,在集群化計算環(huán)境啟動時,其中的節(jié)點并非全部同時啟動;另外在集群操作的過程中,額外的計算節(jié)點還有可能會隨時加入集群,或者有些計算節(jié)點也有可能因故障重啟等原因而退出集群。通常,集群化計算環(huán)境由主控節(jié)點總體管理各個計算節(jié)點,而每個計算節(jié)點此時作為從屬節(jié)點在主控節(jié)點的控制下操作。一般地,主控節(jié)點的領(lǐng)導地位是由正在運行的各計算節(jié)點選舉得出的?,F(xiàn)有的主控節(jié)點選舉機制依賴于所有表決節(jié)點(Quorum node)達成一致意見,在此所述的表決節(jié)點也即具有選舉權(quán)利的計算節(jié)點?,F(xiàn)有技術(shù)通常需要所有表決節(jié)點相互進行信息溝通,例如,表決節(jié)點之間相互比較系統(tǒng)運行時間長短,運行時間最長的節(jié)點被選舉為主控節(jié)點等等。但是,對于大規(guī)模的集群,需要大量的信息溝通,加重了集群信息通道的負載。
發(fā)明內(nèi)容
因此,在盡量不改變現(xiàn)有配置的前提下,如何實現(xiàn)在集群環(huán)境中快速有效地標識計算節(jié)點的類型(例如,主控節(jié)點和從屬節(jié)點)成為一項亟待解決的問題。并且理想的是, 只要集群中存在能夠正常工作的計算節(jié)點,則可以通過某種選舉機制盡快地得出控制整個集群的主控節(jié)點。為此,提供了一種基于節(jié)點具有的表決資源的數(shù)量而標識節(jié)點的方法、裝置和計算機程序產(chǎn)品。在下文中,將計算節(jié)點概括地稱為對象,并且對象還可以包括計算節(jié)點以外的其他實現(xiàn),將在下文中詳述。根據(jù)本發(fā)明的一個實施方式,提出了一種基于對象具有的表決資源的數(shù)量而標識對象的方法,包括向?qū)ο筇峁┲辽僖粋€表決資源;在至少一個輪次中,為對象分配至少一個表決資源;基于已經(jīng)向?qū)ο蠓峙涞谋頉Q資源的數(shù)量,標識對象的類型。根據(jù)本發(fā)明的一個實施方式,其中在至少一個輪次中,為對象分配至少一個表決資源包括在至少一個輪次的每個輪次中,基于至少一個表決資源的優(yōu)先級而為對象分配可見的具有最高優(yōu)先級的表決資源。根據(jù)本發(fā)明的一個實施方式,提供了一種基于對象具有的表決資源的數(shù)量而標識對象的方法,包括查找對對象可見的至少一個表決資源;在至少一個輪次中,選擇至少一個表決資源用于對象;基于已經(jīng)選擇用于對象的表決資源的數(shù)量,標識對象的類型。根據(jù)本發(fā)明的一個實施方式,其中在至少一個輪次中,選擇至少一個表決資源用于對象包括在至少一個輪次的每個輪次中,基于至少一個表決資源的優(yōu)先級而選擇可見的具有最高優(yōu)先級的表決資源用于對象。根據(jù)本發(fā)明的一個實施方式,提供了一種基于對象具有的表決資源的數(shù)量而標識對象的設備,包括用于向?qū)ο筇峁┲辽僖粋€表決資源的裝置;用于在至少一個輪次中、為對象分配至少一個表決資源的裝置;用于基于已經(jīng)向?qū)ο蠓峙涞谋頉Q資源的數(shù)量、標識對象的類型的裝置。根據(jù)本發(fā)明的一個實施方式,其中用于在至少一個輪次中、為對象分配至少一個表決資源的裝置包括用于在至少一個輪次的每個輪次中、基于至少一個表決資源的優(yōu)先級而為對象分配可見的具有最高優(yōu)先級的表決資源的裝置。根據(jù)本發(fā)明的一個實施方式,提供了一種基于對象具有的表決資源的數(shù)量而標識對象的設備,包括用于查找對對象可用的至少一個表決資源的裝置;用于在至少一個輪次中、選擇至少一個表決資源用于對象的裝置;用于基于已經(jīng)選擇用于對象的表決資源的數(shù)量、標識對象的類型的裝置。根據(jù)本發(fā)明的一個實施方式,其中用于在至少一個輪次中、選擇至少一個表決資源用于對象的裝置包括用于在至少一個輪次的每個輪次中、基于至少一個表決資源的優(yōu)先級而選擇可見的具有最高優(yōu)先級的表決資源用于對象的裝置。采用根據(jù)本發(fā)明的各實施方式,可以在盡量不改變集群硬件配置的前提下,方便、 可靠地基于節(jié)點具有的表決資源的數(shù)量而標識對象,并且還可以以易于部署的方式實現(xiàn)集群中各對象的配置。此外,本發(fā)明的實施方式具備魯棒性,并可以在集群首次啟動時、集群中計算節(jié)點的數(shù)量動態(tài)變化時、或者當前主控節(jié)點因故障而關(guān)機等異常情況下保持有效。
結(jié)合附圖并參考以下詳細說明,本發(fā)明各實施方式的特征、優(yōu)點及其他方面將變得更加明顯,在附圖中圖1示意性示出了可在其中使用本發(fā)明實施方式的應用環(huán)境架構(gòu)圖;圖2A和圖2B分別示意性示出了根據(jù)本發(fā)明不同實施方式的基于對象具有的表決資源的數(shù)量而標識對象的方法的流程圖;圖3示意性示出了根據(jù)本發(fā)明一個實施方式的、在對象端的具體操作流程;圖4示意性示出了使用根據(jù)本發(fā)明的方法標識對象的過程的具體實例;圖5示意性示出了使用根據(jù)本發(fā)明的方法標識對象的另一過程的具體實例;圖6A和圖6B分別示意性示出了根據(jù)本發(fā)明不同實施方式的基于對象具有的表決資源的數(shù)量而標識對象的設備的架構(gòu)圖;以及圖7示意性示出了適于實現(xiàn)本發(fā)明實施方式的計算機系統(tǒng)的框圖。
具體實施例方式下面參考附圖詳細描述本發(fā)明的各實施方式。附圖中的流程圖和框圖,圖示了按照本發(fā)明各種實施方式的系統(tǒng)、方法和計算機程序產(chǎn)品的可能實現(xiàn)的體系架構(gòu)、功能和操作。在這點上,流程圖或框圖中的每個方框可以代表一個模塊、程序段、或代碼的一部分,所述模塊、程序段、或代碼的一部分包含一個或多個用于實現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應當注意,在有些作為備選的實現(xiàn)中,方框中所標注的功能也可以以不同于附圖中所標注的順序發(fā)生。例如,兩個接連地表示的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或操作的專用的基于硬件的系統(tǒng)來實現(xiàn),或者可以用專用硬件與計算機指令的組合來實現(xiàn)。在下文中,將參考圖1至圖7詳細說明基于對象具有的表決資源的數(shù)量而標識對象的方法和設備。應當注意,雖然以在集群環(huán)境中將計算節(jié)點標識為主控節(jié)點或者從屬節(jié)點為具體示例進行說明,但本發(fā)明并非局限于此。根據(jù)本發(fā)明的實施方式,對象的種類并不僅限于集群環(huán)境中的計算節(jié)點,而是還可以包括但不限于物理機、虛擬機、應用程序、進程以及線程等。也即,術(shù)語“對象”的含義可以表示需要基于不同規(guī)則而被劃分成不同種類的實體對象或者虛擬對象的全部。圖1示意性示出了可在其中使用本發(fā)明實施方式的應用環(huán)境架構(gòu)圖100。在圖1 中,示出了節(jié)點1 110、節(jié)點2 112···、以及節(jié)點N 114。上述節(jié)點連接至虛擬區(qū)域網(wǎng)絡120 以構(gòu)成集群100。盡管未示出,該集群100中還可以包括其他的節(jié)點和數(shù)據(jù)存儲設備、控制設備等。通過利用本發(fā)明實施方式的方法,可以“選舉”得出集群100的主控節(jié)點,也即分別將集群中的各節(jié)點標識為主控節(jié)點和從屬節(jié)點。在本發(fā)明一個實施方式中,對于具有一定數(shù)量(例如,N)對象的集群,設置特定數(shù)量(例如,Q)的表決資源,當某一對象獲得的表決資源的數(shù)量大于或等于預定義閾值(例如,[^/2」+1,其中10/2」表示對0/2的向下取整操作)時,則將該對象標識為主控,而將
其余對象標識為從屬。應當注意,對象獲得表決資源的過程是在不同輪次中完成的。圖2A示意性示出了根據(jù)本發(fā)明一個實施方式的基于對象具有的表決資源的數(shù)量而標識對象的方法的流程圖200A。流程圖200A從管理各個對象的角度示出了根據(jù)本發(fā)明的方法。當集群環(huán)境中的對象啟動后,如果發(fā)現(xiàn)在該集群中沒有主控,則各個對象啟動選舉主控的過程。在一個實施方式的方法中,包括向?qū)ο筇峁┲辽僖粋€表決資源;在至少一個輪次中,為對象分配至少一個表決資源;以及基于已經(jīng)向?qū)ο蠓峙涞谋頉Q資源的數(shù)量,標識對象的類型。應當注意,在本發(fā)明的實施方式中,通過判斷一個對象A(例如,圖1中的節(jié)點 1110)獲得的“表決資源”的多少,而標識其類型。在一個實施方式中,至少一個表決資源中的每個僅被分配給一個對象,一旦某表決資源被分配給一個對象,則在該對象退出選舉并釋放該表決資源之前,該表決資源不能再被分配給其他的對象。在具體實現(xiàn)中,表決資源可以采用任意適當?shù)奈锢?虛擬裝置(例如,在集群中采用物理/虛擬盤的形式)實現(xiàn),還可以采用各種適合的數(shù)據(jù)結(jié)構(gòu)來實現(xiàn)。在一個實施方式中,可以在共享盤集群環(huán)境中,利用支持SCSI的共享盤實現(xiàn)表決資源。在一個實施方式中,表決資源例如可以采用一系列二進制數(shù)據(jù)位實現(xiàn),并且以二進制數(shù)據(jù)位的位置表示表決資源的序號,例如當“表決資源”被某對象占用時將該位設置為“ 1 ”,而在未被占用時將該位設置為“ 0 ”。參見圖2A,在步驟S202A中,向?qū)ο筇峁┲辽僖粋€表決資源。應當注意,在此所述的“向?qū)ο筇峁┲辽僖粋€表決資源”是指使得對象可以看到表決資源,進而有資格參與隨后的標識操作。應當注意,表決資源對于對象可見,并不意味著可以將該表決資源分配給對象。在該表決資源尚未被分配給其他對象的前提下,可以將該表決資源分配給對象;而如果該表決資源已經(jīng)被分配給其他對象,則該表決資源盡管對于對象可見,然而卻不能被分配給對象。在不考慮可能出現(xiàn)異常的情況下,可以認為向一個對象提供的表決資源對于該對象全部是“可見”的。應當注意,所提供的表決資源的數(shù)量可以是預先確定的。在一個實施方式中,為防止在分配結(jié)束時出現(xiàn)例如兩個對象被分配有相同數(shù)量的表決資源的“平局”狀態(tài),通常提供奇數(shù)個表決資源。為簡單起見,假設提供Q = 3個表決資源,當某對象具有的表決資源的數(shù)量大于或等于1_ρ/2」+1 (即,大于或等于2)時,則將其標識為主控。在步驟S204A中,在至少一個輪次中,為對象分配至少一個表決資源。例如,當只提供了一個表決資源時,則僅需要一輪操作即可將全部表決資源(即,一個表決資源)分配給一個對象,并得出該對象可以擔任主控。而當存在多個表決資源時,則需要多個輪次的操作,例如當提供3個表決資源時可以需要2輪操作。如步驟S206A所示,如果存在下一輪次, 則操作返回操作S204A以繼續(xù)執(zhí)行下一輪次的分配操作。如果在步驟S206A中的判斷結(jié)果為“否”,則沒有下一輪次的操作,并且流程前進至步驟S208A。應當注意,分配表決資源的操作可以基于對象的請求而執(zhí)行,例如可以采用先請求先分配的原則。如果對象A和對象B都請求了同一個表決資源(例如,表決資源1),而對象B先于對象A發(fā)出了請求,則可以向?qū)ο驜分配該表決資源1,盡管表決資源1對于對象 A可見,然而卻不能將其分配給對象Α。應當注意,在每個輪次中,對于一個對象而言,該對象最多僅能被分配一個表決資源。而在每個輪次中,針對不同對象而言,不同對象可以被分配有不同的表決資源。例如, 在針對對象A的一個輪次中,可以向?qū)ο驛分配表決資源1 ;而在針對對象B的一個輪次中, 可以向?qū)ο驜分配表決資源2。應當注意,表決資源是可以在每個對象之間共享的資源,然而,當向一個對象分配了特定表決資源后,則不能再向其他對象分配該特定的表決資源。在步驟S208A中,基于已經(jīng)向?qū)ο蠓峙涞谋頉Q資源的數(shù)量,標識對象的類型。繼續(xù)上文的示例,當對象A被分配了 2個表決資源時,則可以將該對象標識為主控。對于其他對象而言,由于這些對象所具有的表決資源的數(shù)量小于2個,因而將這些對象標識為從屬。應當注意,對象可以具備多種類型,而并不僅限于主控類型和從屬類型。在一個實施方式中,基于每個對象具有的表決資源的多少,還可以包括主控、從屬以及備選主控等多種類型。當主控對象因故障而關(guān)機或者出于各種其他原因而不能繼續(xù)擔任主控時,一個簡單的方法是,如果備選主控此時正常運行并且適合于擔任主控,則可以將該備選主控標識為主控。應當注意,上文參見圖2Α所述的操作流程是針對集群中的各個對象并行執(zhí)行的。 例如,在集群啟動時針對各個對象同時執(zhí)行,但由于各個對象的啟動速度并不相同,而可能導致對象A在其他對象尚未完成啟動時,已經(jīng)開始執(zhí)行如圖2Α所示的方法。此時由于沒有其他對象與對象A競爭表決資源,因而在針對對象A進行的兩個輪次的分配中,對象A即可獲得2個表決資源,繼而可以將對象A標識為主控。當多個對象的啟動速度類似時,將存在多個對象同時競爭表決資源的情況。在一個實施方式中,還可以包括篩選向哪些對象提供表決資源的過程。例如,假設執(zhí)行本發(fā)明的方法的目的在于在集群中選舉出一個主控對象。通常而言,選舉主控節(jié)點時可以考慮選擇處理能力較高、網(wǎng)絡連接狀況較好、并且當前工作負載較低的對象,以便該對象可以提供更多的計算能力用于管理和協(xié)調(diào)集群中的各個設備。此時,則可以設置“過濾” 步驟并針對節(jié)點的處理能力、網(wǎng)絡連接狀況、當前工作負載、以及工作穩(wěn)定性等因素設置過濾標準。繼而,僅向符合這些標準的節(jié)點提供表決資源,也即排除了不符合標準的節(jié)點競選主控的機會。設置“過濾”步驟的優(yōu)勢在于,可以初步篩選刪除不符合特定條件的對象。假設沒有“過濾”步驟,即使一個本應當被過濾掉的對象被分配了足夠數(shù)量的表決資源并被標識為主控,而該對象通常會出于自身處理能力較低、工作狀況不穩(wěn)定等原因而難以勝任主控節(jié)點的任務,并導致整個集群效率低下甚至癱瘓。應當注意,即使向集群中的全部對象提供相同數(shù)量的表決資源,然而出于某些原因(例如,網(wǎng)絡狀況差、延遲時間長等),有些表決資源可能會對集群中的有些對象不可見。 例如可能存在如下情況,表決資源1、2和3對于對象A可見,表決資源2、3對于對象B可見, 而表決資源1、3對于對象C可見。因而在一個實施方式中,還可以包括,判斷向?qū)ο筇峁┑闹辽僖粋€表決資源的可見性。在后續(xù)至少一個輪次的分配操作中,僅能向?qū)ο蠓峙鋵ζ淇梢姷谋頉Q資源,而不能向?qū)ο蠓峙鋵ζ洳豢梢姷谋頉Q資源。本發(fā)明的方法在于基于對象具有的表決資源的數(shù)量而標識對象,其目的在于標識對象的類型。應當注意,在經(jīng)過多輪次的分配之后,即使某對象未曾被分配任何資源(此時該對象具有的表決資源數(shù)量為零),也可以標識該對象(例如,標識為從屬節(jié)點)。在一個實施方式中,還可以在已經(jīng)標識出某種對象之后,標識其他對象的類型。例如,在通過對象具有的表決資源的數(shù)量選舉得出主控之后,可以將集群中的其他對象均標識為從屬。在一個實施方式中,在至少一個輪次中,為對象分配至少一個表決資源包括在至少一個輪次的每個輪次中,基于至少一個表決資源的優(yōu)先級而為對象分配可見的具有最高優(yōu)先級的表決資源。應當注意,在此所述的分配“可見的具有最高優(yōu)先級的表決資源”將會出現(xiàn)不同的情況即“可見的具有最高優(yōu)先級的表決資源”可以是已經(jīng)被分配或者尚未被分配的表決資源,在下文中將詳細描述。如上所述,表決資源對對象“可見”是指,對象可以看到表決資源,此時并不區(qū)分該表決資源是否已經(jīng)被分配給了某個對象。對于一個對象而言,將尚未被分配的可見表決資源稱為“可用”的表決資源。一個表決資源不能分配給一個對象可能有兩個原因,一是該表決資源本身對于該對象不可見,二是雖然可見但是該表決資源已經(jīng)被分配給了其他對象。 因而成功分配給一個對象的表決資源是對其“可用”的表決資源,而在后文中將詳述對于 “不可用”表決資源的處理方式。在一個實施方式中,為表決資源設置優(yōu)先級。在一個實施方式中,每個表決資源唯一地具有一個優(yōu)先級。這里的優(yōu)先級是指在向各個對象分配表決資源時需要考慮的順序。 使得表決資源與優(yōu)先級一一對應的目的在于,在分配表決資源時,基于優(yōu)先級的順序可以唯一確定下一個被分配的表決資源。將全部表決資源依優(yōu)先級順序進行排序,在向每個對象分配表決資源時,按照優(yōu)先級的順序進行分配。例如,在一個實施方式中可以提供3個表決資源,則此時可以將3個表決資源1、表決資源2和表決資源3的優(yōu)先級從高至低地分別設置為“優(yōu)先級1”、“優(yōu)先級2”和“優(yōu)先級3”。例如在分配表決資源的某一時刻,表決資源1、2和3均對對象A可見,表決資源1和3對對象B可見。則在針對對象A的一個輪次分配中,由于在對象A可用的表決資源中, 表決資源1具有最高的優(yōu)先級(即,“優(yōu)先級1”),可以向?qū)ο驛分配表決資源1。此時,由于已經(jīng)向?qū)ο驛分配了表決資源1,則該表決資源1此時對對象B不可用,而僅有表決資源 3可用。因而在針對對象B的一個輪次的分配中,可以向?qū)ο驜分配表決資源3。在一個實施方式中,其中在至少一個輪次的每個輪次中、基于至少一個表決資源的優(yōu)先級而為對象分配可見的具有最高優(yōu)先級的表決資源包括如果具有最高優(yōu)先級的表決資源先前未被分配,則為對象分配具有最高優(yōu)先級的表決資源;如果具有最高優(yōu)先級的表決資源先前已經(jīng)被分配,則退出當前輪次。退出當前輪次意味著,放棄競選主控。上述段落細化了在每一輪次中針對一個對象的分配操作,即當待分配表決資源可用時,可以正常地進行分配;而當待分配表決資源不可用時,則為了避免互鎖現(xiàn)象(即一個對象已經(jīng)占有了一定數(shù)量的表決資源、然而卻不能獲得用于滿足預定義閾值的其他表決資源的情況),需要該對象退出競選操作。在一個實施方式中,向?qū)ο蠓峙浔頉Q資源需要滿足三個條件,表決資源對于對象可見、表決資源對于對象可用、以及表決資源具有最高優(yōu)先級。并且在一個輪次中,針對一個對象僅進行一次分配,一旦發(fā)現(xiàn)對象請求的表決資源不可用,則針對該對象進行的本輪次分配結(jié)束。在一個實施方式中,基于已經(jīng)向?qū)ο蠓峙涞谋頉Q資源的數(shù)量,標識對象的類型包括當已經(jīng)向?qū)ο蠓峙涞谋頉Q資源的數(shù)量大于或者等于預定義閾值時,將對象的類型標識為主控。在一個實施方式中,基于已經(jīng)向?qū)ο蠓峙涞谋頉Q資源的數(shù)量,標識對象的類型包括當已經(jīng)向?qū)ο蠓峙涞谋頉Q資源的數(shù)量小于預定義閾值時,將對象的類型標識為從屬。例如,在上文的示例中,將具有2個表決資源的對象標識為主控,而將具有其他數(shù)量表決資源的對象標識為從屬。由于集群的操作可能會存在不穩(wěn)定因素,可能導致向?qū)ο筇峁┲辽僖粋€表決資源時出現(xiàn)異常。例如,預定向集群中的各個對象提供3個表決資源,然而由于網(wǎng)絡穩(wěn)定性等原因而導致有可能每個對象都僅能看到一個表決資源,則此時無論怎樣分配,對象具有的表決資源的數(shù)量都不能達到預定義閾值“2”。在一個實施方式中,還可以獲取對每個對象可見的表決資源的數(shù)量。在一個實施方式中,還可以基于獲取的對每個對象可見的表決資源的數(shù)量,動態(tài)地調(diào)整預定義閾值的數(shù)量。例如在當各個對象可見的表決資源的數(shù)量均低于所提供的表決資源的數(shù)量時,可以適當?shù)卣{(diào)整預定義閾值的大小。在上文提供3個表決資源而每個對象僅可見1個表決資源時,例如可以將預定義閾值設置為1,此時如果出現(xiàn)多個對象各自具有一個表決資源,還可以結(jié)合下文的平局裁判步驟實現(xiàn)選舉主管。例如,出于各種原因可能會導致各個對象均可見偶數(shù)個相同的表決資源(也即等效于提供了偶數(shù)個表決資源的情況),還可以單獨設置平局裁判步驟。例如,選擇處理能力較高的對象、選擇網(wǎng)絡狀況較好的對象、選擇當前工作負載較低的對象、或者可以隨機選擇。盡管提供3個表決資源即可實現(xiàn)基于對象具有的表決資源的數(shù)量而標識對象的目的,在一個實施方式中,為提高魯棒性還可以提供3個以上的奇數(shù)個表決資源。提供更多的表決資源在一方面可以通過提高所提供表決資源的數(shù)量而保證對各個節(jié)點“可見”的表決資源的數(shù)量,另一方面,由于復雜性的增加而導致需要更多輪次的分配操作。應當注意,盡管輪次數(shù)量有所增加,然而在每個輪次中,仍然基于至少一個表決資源的優(yōu)先級而為對象分配可見的具有最高優(yōu)先級的表決資源。也即,如上文所述,在每個輪次中的分配標準仍然是表決資源對于對象可見、表決資源對于對象可用以及表決資源具有最高優(yōu)先級。在一個實施方式中,對象包括以下至少一個物理機、虛擬機、應用程序、進程以及線程。已知的是,集群中的各個計算節(jié)點可以是單獨的物理機,也可以是虛擬機,這些物理機和/或虛擬機可以分布于不同物理位置并且通過網(wǎng)絡(包括,有線網(wǎng)絡和無線網(wǎng)絡)進行交互,從而在邏輯上形成一個集群。并且可以基于本說明書中所述的方法來標識進程和線程等對象的類型。在一個實施方式中,還可以隨著新對象的加入、現(xiàn)有對象的異?;蛘弋斍皹俗R的對象類型不再適合等情況,而動態(tài)地執(zhí)行基于對象具有的表決資源的數(shù)量而標識對象的類型。在一個實施方式中,可以使用SCSI3 Persistent Group Reservation (PGR)機制實現(xiàn)根據(jù)本發(fā)明的方法,根據(jù)本發(fā)明的其他實施方式,還可以采用其他機制實現(xiàn)。在一個實施方式中,可以在共享盤集群環(huán)境中,利用支持SCSI的共享盤實現(xiàn)表決資源。下面參見圖2B,圖2B示意性示出了根據(jù)本發(fā)明另一實施方式的基于對象具有的表決資源的數(shù)量而標識對象的方法的流程圖200B。圖2B中的各步驟與圖2A中的各步驟分別相對應,并且圖2B是從各個對象的角度示出了根據(jù)本發(fā)明的方法。在一個實施方式中,包括查找對對象可用的至少一個表決資源;在至少一個輪次中,選擇至少一個表決資源用于對象;基于已經(jīng)選擇用于對象的表決資源的數(shù)量,標識對象的類型。如圖2B所示,在步驟S202B中,查找對對象可見的至少一個表決資源,查找所得表決資源即為對該對象可見的表決資源。在步驟S204B中,在至少一個輪次中,選擇至少一個表決資源用于對象。在步驟S206B中,判斷是否存在下一輪次,如果存在,則操作返回步驟 S204B以執(zhí)行下一輪次的選擇;如果不存在,則操作前進至步驟S208B,以便基于已經(jīng)選擇用于對象的表決資源的數(shù)量,標識對象的類型。應當注意,如圖2B中所示的從對象角度描述方法的步驟與如圖2A中所示的從管理對象角度描述方法的步驟相對應,上文中針對圖2A所述的各種實施方式、術(shù)語、示例和其他描述均適用于參見圖2B所述的方法,因而不再贅述。在一個實施方式中,其中在至少一個輪次中,選擇至少一個表決資源用于對象包括在至少一個輪次的每個輪次中,基于至少一個表決資源的優(yōu)先級而選擇可見的具有最高優(yōu)先級的表決資源用于對象。在一個實施方式中,其中在至少一個輪次的每個輪次中,基于至少一個表決資源的優(yōu)先級而選擇可見的具有最高優(yōu)先級的表決資源用于對象如果具有最高優(yōu)先級的表決資源先前未被選擇,則選擇具有最高優(yōu)先級的表決資源;如果具有最高優(yōu)先級的表決資源先前已經(jīng)被選擇,則退出當前輪次。在一個實施方式中,其中每個表決資源唯一地具有一個優(yōu)先級。在一個實施方式中,其中基于已經(jīng)選擇用于對象的表決資源的數(shù)量,標識對象的類型包括當已經(jīng)選擇用于對象的表決資源的數(shù)量大于或者等于預定義閾值時,將對象的類型標識為主控。在一個實施方式中,其中基于已經(jīng)選擇用于對象的表決資源的數(shù)量,標識對象的類型包括當已經(jīng)選擇用于對象的表決資源的數(shù)量小于預定義閾值時,將對象的類型標識為從屬。在一個實施方式中,其中對象包括以下至少一個物理機、虛擬機、應用程序、進程以及線程。
參見圖3,該圖示意性示出了根據(jù)本發(fā)明一個實施方式的、在對象端的具體操作流程300。應當注意,該流程圖適用于在集群中的每個對象處執(zhí)行,并且各個對象處執(zhí)行的操作流程300是并行執(zhí)行的。圖3所示流程圖的應用背景與上文所述示例相同,即為從集群中的N個對象中選舉出主控,提供了 Q = 3個表決資源,并且當某對象具有的表決資源大于等于|_0/2」+1 (S卩,大于等于2)時,則將該對象標識為主控,而將集群中的其他對象標識為從屬。應當注意,在流程圖300中,以粗體顯示的實線框圖S302表示流程圖的起點,而以粗體顯示的實線框圖S304、S306和S308表示流程圖的終點,也即該流程可以具有不同的出口。方法開始于步驟S302,此時對象啟動,并繼而在步驟S310處判斷可見表決資源的數(shù)量, 如果可見表決資源數(shù)量為0,則流程進入步驟S3M以查找可用表決資源并返回步驟S310 處。如果在步驟S310處發(fā)現(xiàn)可見表決資源數(shù)量不為零,則操作進入步驟S312以判斷可見表決資源的數(shù)量是否大于1,如果判斷為“是”則操作進入步驟S314 ;如果判斷為“否”,則操作進入步驟S304,將該對象標識為從屬,此時在該對象處執(zhí)行的操作結(jié)束。在步驟S314中,將當前表決資源ID設置為1(也即,從第一個表決資源開始,逐個判斷當前對象是否可以選擇該表決資源),并將當前對象具備的表決資源的數(shù)量Count設置為0。應當注意,此時的表決資源是按照優(yōu)先級從高至低排序的一個序列。例如,ID為1 的表決資源具有最高優(yōu)先級,ID為2的標記資源的優(yōu)先級次之,以此類推。操作流程繼而進入步驟S316以判斷標號為ID的表決資源對于當前節(jié)點是否可見,如果結(jié)果為“是”則操作進入步驟S318 ;如果步驟S316的結(jié)果為“否”則進入步驟,將表決資源ID加1,以查看下一表決資源的狀態(tài)。繼而從步驟進入步驟,判斷當前表決資源的ID是否小于等于3,如果滿足條件則流程返回步驟S316重復上文的操作;如果不滿足條件則流程前進至步驟S330以表示該操作失敗。應當注意,在本流程圖300中僅以提供了 3個表決資源作為示例詳細解釋了在對象端的操作流程,根據(jù)本發(fā)明的其他實施方式,還可以提供更多的表決資源。本領(lǐng)域技術(shù)人員可以根據(jù)圖3所示的算法而易于實現(xiàn)其他的實施方式?,F(xiàn)在繼續(xù)上文所述操作,在步驟S318處,判斷是否成功選擇該表決資源,如果判斷為“否”,則操作轉(zhuǎn)向步驟S304,以將當前對象標記為從屬(操作300結(jié)束);如果判斷為“是”則前進至步驟S320,并將對象具有的表決資源的數(shù)量Count加1,繼而前進至步驟 S322。在步驟S322中,判斷對象具有的表決資源的數(shù)量Count是否大于等于2,如果為“否” 則操作返回步驟重復執(zhí)行上文所述操作;如果為“是”則前進至步驟S306,以將當前對象標記為主控(操作300結(jié)束)。從上文針對圖3的詳細描述可知,在對象處執(zhí)行操作在于,在對象具有的表決資源達到預定義閾值之前,在多個輪次中逐個遍歷(即按照優(yōu)先級從高到低的順序)對于對象可見的表決資源如果某表決資源尚未被其他對象選擇,則選擇該表決資源;如果某表決資源已經(jīng)被其他對象選擇,則對象退出選舉。應當注意,由于在多個對象中的每個對象處都要執(zhí)行圖3所示的操作,并且每個對象的啟動時間、查找可見表決資源的時間、以及選擇表決資源所消耗的時間長短可能彼此不同,因而可能會出現(xiàn)如下情況1)例如對象A在其余節(jié)點尚未啟動時,已經(jīng)成功完成了如圖3所示的多輪次的選擇表決資源的操作,此時該對象A將被標識為主控(即,從步驟 S306所示的出口結(jié)束操作流程300)。2)又例如,多個對象A、B和C大約同時啟動,并且執(zhí)CN 102541802 A
行每一輪次的選擇表決資源的所用時間也大致相同,則多個對象A、B和C在同一時間段內(nèi)分多輪次選擇表決資源。3)又例如,對象A的啟動非常慢,而此時啟動較快的其他對象已經(jīng)完成了多輪次的選擇表決資源的操作并成功選舉了主控,此時盡管對象A可以看到全部表決資源,然而這些表決資源已經(jīng)被其他對象占有,則對象A從步驟S304所示的出口結(jié)束操作300,并被標識為從屬?,F(xiàn)在將參見圖4至圖5詳細說明標識對象過程。圖4示意性示出了使用根據(jù)本發(fā)明的方法標識對象的過程的具體實例400。應當注意,圖4至圖5所繪出的示例適用于從管理對象角度描述的實施方式、還適用于從對象本身角度的描述,其中分別示出了在多輪次的每個輪次中的對象所具有的表決資源。應當注意,在圖4和圖5中包括的對象A、對象B和對象C處均執(zhí)行如附圖2B所示的方法,由于各個對象的啟動時間、自身性能等屬性各不相同,在各個輪次中向哪個對象分配表決資源的方式可能并不唯一。圖4和圖5的示例中示出了能夠體現(xiàn)本發(fā)明方法優(yōu)勢的幾種情況。如圖4示出了 3個對象,分別為對象A 402、對象B 404以及對象C 406 ;并且表決資源1、2、3對于對象A 402可見,表決資源2、3對于對象B 404可見,以及表決資源1、2對于對象C 406可見?;诒景l(fā)明的方法,在至少一個輪次的每個輪次中,基于至少一個表決資源的優(yōu)先級而為對象分配可見的具有最高優(yōu)先級的表決資源。對于對象A而言,表決資源1具有最高的優(yōu)先級并且是可見且可用的表決資源,因而將表決資源1分配給對象A。此時對于對象B,表決資源2是可見的且可用的具有最高優(yōu)先級的表決資源,因而將表決資源2分配給對象B。由于對對象C可見的表決資源1和2已經(jīng)分別被分配給了對象A和對象B,則對象 C退出選舉過程。在經(jīng)過箭頭410所示的第一輪次的操作之后,如標記412所示,對象A具有表決資源1 (如圖中陰影所示),而對象B具有表決資源2。由于對象A和對象B中的任一項目前只具有一個表決資源,尚未達到2個表決資源的預定義閾值,需要下一輪次的分配操作。在第二輪次中,對象A應當被分配的可見的最高優(yōu)先級的表決資源為表決資源2, 然而此時該表決資源2已經(jīng)被對象B所占有。表決資源2對于對象A不可用,因而對象A 在第二輪次中退出選舉。對象B應當被分配的可見的最高優(yōu)先級的表決資源為表決資源3, 并且此時表決資源3可用,則將表決資源3分配給對象B。在第二輪次結(jié)束時,對象B具有表決資源2和3 (如框圖4M所示),并且具有的表決資源的數(shù)量達到預定義閾值“2”,因而對象B被標識為主控,而其他的對象A和C被標識為從屬。現(xiàn)在參見圖5,該圖示意性示出了使用根據(jù)本發(fā)明的方法標識對象的過程的具體實例500。如圖5示出了 3個對象,分別為對象A 502、對象B 504以及對象C 506 ;并且表決資源1、2、3對于對象A 502可見,表決資源2、3對于對象B 504可見,以及表決資源1、3 對于對象C 506可見。對于對象C而言,表決資源1具有最高的優(yōu)先級。假設在第一輪次中,對象C首先請求了表決資源1,則將表決資源1分配給對象C。此時對于對象B,表決資源2是可見的具有最高優(yōu)先級的表決資源,因而將表決資源2分配給對象B。由于對對象A 可見的表決資源1和2已經(jīng)分別被分配給了對象C和對象B,則對象A退出選舉過程。在經(jīng)過箭頭510所示的第一輪次的操作之后,如標記512所示,對象B具有表決資源2 (如圖中陰影所示),而對象C具有表決資源1。由于對象B和對象C中的任一項目前只具有1個表決資源,尚未達到2個表決資源的預定義閾值,需要下一輪次的分配操作。在第二輪次中,由于對象B和對象C的可見的最高優(yōu)先級的表決資源均為表決資源3,則此時該表決資源3被分配給先請求的對象。因而依賴于對象B和對象C的請求順序,對象B和C均有可能獲得2個表決資源并達到預定義閾值而被標識為主控,而其余的對象被標識為從屬?,F(xiàn)在參見圖6A和圖6B描述用于執(zhí)行根據(jù)本發(fā)明實施方式的裝置的配置。圖6A 和圖6B分別示意性示出了根據(jù)本發(fā)明不同實施方式的基于對象具有的表決資源的數(shù)量而標識對象的設備600A和600B的架構(gòu)圖。附圖6A所示,基于對象具有的表決資源的數(shù)量而標識對象的設備600A包括提供裝置610A,用于向?qū)ο筇峁┲辽僖粋€表決資源;分配裝置620A,用于在至少一個輪次中,為對象分配至少一個表決資源;以及標識裝置630A,用于基于已經(jīng)向?qū)ο蠓峙涞谋頉Q資源的數(shù)量,標識對象的類型。其中所示分配裝置620A還可以包括輪次管理裝置622A和資源分配裝置624A,用于在至少一個輪次的每個輪次中,基于至少一個表決資源的優(yōu)先級而為對象分配可見的具有最高優(yōu)先級的表決資源。如附圖6B所示,基于對象具有的表決資源的數(shù)量而標識對象的設備600B包括查找裝置610B,用于查找對對象可見的至少一個表決資源;選擇裝置620B,用于在至少一個輪次中,選擇至少一個表決資源用于對象;以及標識裝置630B,用于基于已經(jīng)選擇用于對象的表決資源的數(shù)量,標識對象的類型。其中所示選擇裝置620B還可以包括輪次管理裝置 622B和資源選擇裝置624B,用于在至少一個輪次的每個輪次中,基于至少一個表決資源的優(yōu)先級而選擇可見的具有最高優(yōu)先級的表決資源用于對象。應當注意,盡管在圖6A和圖6B中并未逐一詳細示出基于對象具有的表決資源的數(shù)量而標識對象的設備(包括從管理對象角度示出的設備和從對象角度示出的設備)中的各種裝置,本領(lǐng)域技術(shù)人員可以基于說明書的公開而實現(xiàn)上述各裝置。并且上述設備可以實現(xiàn)上文中參見圖2A和圖2B所述的方法。此外,圖6A和圖6B中所示的各裝置以及并未逐一繪出的各裝置可以位于集群中的一個或者多個對象中,或者還可以位于一個或者多個其他的專用設備中,只要能夠?qū)崿F(xiàn)與集群中的各對象實現(xiàn)數(shù)據(jù)通信并完成基于對象具有的表決資源的數(shù)量而標識對象的功能即可。根據(jù)本發(fā)明的實施方式,并不限制圖6A和圖6B 所示設備的物理位置,而是該設備包括的各個裝置可以以集中式或者分布式方式位于任何適當?shù)奈锢碓O備中,只要這些裝置在整體上能夠?qū)崿F(xiàn)本說明書中所述功能即可。應當注意,盡管本說明書中以選舉主控和設置從屬作為標識對象類型的示例,然而本發(fā)明并不局限于說明書中示出的主控和從屬的分類方式,而是可以包括根據(jù)管理員或者其他人員的需要和偏好、適應于不同的軟件和硬件條件,而對各種硬件實體對象和軟件虛擬對象進行分類的不同標識方式。圖7示意性示出了適于實現(xiàn)本發(fā)明實施方式的計算機系統(tǒng)的框圖。如圖7所示, 計算機系統(tǒng)可以包括CPU(中央處理單元)701、RAM(隨機存取存儲器)702、R0M(只讀存儲器)703、系統(tǒng)總線704、硬盤控制器705、鍵盤控制器706、串行接口控制器707、并行接口控制器708、顯示控制器709、硬盤710、鍵盤711、串行外部設備712、并行外部設備713和顯示器714。在這些部件中,與系統(tǒng)總線704相連的有CPU 701、RAM 702、R0M703、硬盤控制器705、鍵盤控制器706、串行接口控制器707、并行接口控制器708和顯示控制器709。硬盤710與硬盤控制器705相連,鍵盤711與鍵盤控制器706相連,串行外部設備712與串行接口控制器707相連,并行外部設備713與并行接口控制器708相連,以及顯示器714與顯示控制器709相連。應當理解,圖7所述的結(jié)構(gòu)框圖僅僅為了示例的目的而示出的,而不是對本發(fā)明的限制。在某些情況下,可以根據(jù)需要增加或者減少其中的一些設備。本發(fā)明可以采取硬件實施方式、軟件實施方式或既包含硬件組件又包含軟件組件的實施方式的形式。在優(yōu)選實施方式中,本發(fā)明實現(xiàn)為軟件,其包括但不限于固件、駐留軟件、微代碼等。而且,本發(fā)明還可以采取可從計算機可用或計算機可讀介質(zhì)訪問的計算機程序產(chǎn)品的形式,這些介質(zhì)提供程序代碼以供計算機或任何指令執(zhí)行系統(tǒng)使用或與其結(jié)合使用。 出于描述目的,計算機可用或計算機可讀機制可以是任何有形的裝置,其可以包含、存儲、 通信、傳播或傳輸程序以由指令執(zhí)行系統(tǒng)、裝置或設備使用或與其結(jié)合使用。介質(zhì)可以是電的、磁的、光的、電磁的、紅外線的、或半導體的系統(tǒng)(或裝置或器件)或傳播介質(zhì)。計算機可讀介質(zhì)的例子包括半導體或固態(tài)存儲器、磁帶、可移動計算機磁盤、隨機訪問存儲器(RAM)、只讀存儲器(ROM)、硬磁盤和光盤。目前光盤的例子包括緊湊盤-只讀存儲器(CD-ROM)、壓縮盤-讀/寫(CD-R/W)和DVD。適合于存儲/或執(zhí)行程序代碼的數(shù)據(jù)處理系統(tǒng)將包括至少一個處理器,其直接地或通過系統(tǒng)總線間接地耦合到存儲器元件。存儲器元件可以包括在程序代碼的實際執(zhí)行期間所利用的本地存儲器、大容量存儲器、以及提供至少一部分程序代碼的臨時存儲以便減少執(zhí)行期間從大容量存儲器必須取回代碼的次數(shù)的高速緩存存儲器。輸入/輸出或I/O設備(包括但不限于鍵盤、顯示器、指點設備等等)可以直接地或通過中間I/O控制器耦合到系統(tǒng)。網(wǎng)絡適配器也可以耦合到系統(tǒng),以使得數(shù)據(jù)處理系統(tǒng)能夠通過中間的私有或公共網(wǎng)絡而耦合到其他數(shù)據(jù)處理系統(tǒng)或遠程打印機或存儲設備。調(diào)制解調(diào)器、線纜調(diào)制解調(diào)器以及以太網(wǎng)卡僅僅是當前可用的網(wǎng)絡適配器類型的幾個例子。從上述描述應當理解,在不脫離本發(fā)明真實精神的情況下,可以對本發(fā)明各實施方式進行修改和變更。本說明書中的描述僅僅是用于說明性的,而不應被認為是限制性的。 本發(fā)明的范圍僅受所附權(quán)利要求書的限制。
權(quán)利要求
1.一種基于對象具有的表決資源數(shù)量而標識所述對象的方法,包括向所述對象提供可供分配的至少一個表決資源;在至少一個輪次中,為所述對象分配所述至少一個表決資源;基于已經(jīng)分配給所述對象的表決資源的數(shù)量,標識所述對象的類型。
2.根據(jù)權(quán)利要求1所述的方法,其中所述在至少一個輪次中,為所述對象分配所提供的表決資源包括在所述至少一個輪次的每個輪次中,基于所述至少一個表決資源的優(yōu)先級而為所述對象分配可見的具有最高優(yōu)先級的表決資源。
3.根據(jù)權(quán)利要求2所述的方法,其中在所述至少一個輪次的每個輪次中、基于所述至少一個表決資源的優(yōu)先級而為所述對象分配可見的具有最高優(yōu)先級的表決資源包括如果所述具有最高優(yōu)先級的表決資源先前未被分配,則為所述對象分配所述具有最高優(yōu)先級的表決資源;以及如果所述具有最高優(yōu)先級的表決資源先前已經(jīng)被分配,則退出當前輪次。
4.根據(jù)權(quán)利要求1至3中任一項所述的方法,其中每個表決資源唯一地具有一個優(yōu)先級。
5.根據(jù)權(quán)利要求1至3中任一項所述的方法,其中所述基于已經(jīng)向所述對象分配的表決資源的數(shù)量,標識所述對象的類型包括當已經(jīng)向所述對象分配的表決資源的數(shù)量大于或者等于預定義閾值時,將所述對象的類型標識為主控;以及當已經(jīng)向所述對象分配的表決資源的數(shù)量小于所述預定義閾值時,將所述對象的類型標識為從屬。
6.根據(jù)權(quán)利要求1至3中任一項所述的方法,其中所述對象包括以下至少一個物理機、虛擬機、應用程序、進程以及線程。
7.一種基于對象具有的表決資源的數(shù)量而標識所述對象的方法,包括查找對所述對象可見的至少一個表決資源;在至少一個輪次中,選擇所述至少一個表決資源用于所述對象;基于已經(jīng)選擇用于所述對象的表決資源的數(shù)量,標識所述對象的類型。
8.根據(jù)權(quán)利要求7所述的方法,其中所述在至少一個輪次中,選擇所述至少一個表決資源用于所述對象包括在所述至少一個輪次的每個輪次中,基于所述至少一個表決資源的優(yōu)先級而選擇可見的具有最高優(yōu)先級的表決資源用于所述對象。
9.根據(jù)權(quán)利要求8所述的方法,其中在所述至少一個輪次的每個輪次中,基于所述至少一個表決資源的優(yōu)先級而選擇可見的具有最高優(yōu)先級的表決資源用于所述對象,如果所述具有最高優(yōu)先級的表決資源先前未被選擇,則選擇所述具有最高優(yōu)先級的表決資源;如果所述具有最高優(yōu)先級的表決資源先前已經(jīng)被選擇,則退出當前輪次。
10.根據(jù)權(quán)利要求7至9中任一項所述的方法,每個表決資源唯一地具有一個優(yōu)先級。
11.根據(jù)權(quán)利要求7至9中任一項所述的方法,其中所述基于已經(jīng)選擇用于所述對象的表決資源的數(shù)量,標識所述對象的類型包括當已經(jīng)選擇用于所述對象的表決資源的數(shù)量大于或者等于預定義閾值時,將所述對象的類型標識為主控;以及當已經(jīng)選擇用于所述對象的表決資源的數(shù)量小于預定義閾值時,將所述對象的類型標識為從屬。
12.根據(jù)權(quán)利要求7至9中任一項所述的方法,其中所述對象包括以下至少一個物理機、虛擬機、應用程序、進程以及線程。
13.一種基于對象具有的表決資源的數(shù)量而標識所述對象的設備,包括 用于向所述對象提供至少一個表決資源的裝置;用于在至少一個輪次中、為所述對象分配所述至少一個表決資源的裝置; 用于基于已經(jīng)向所述對象分配的表決資源的數(shù)量、標識所述對象的類型的裝置。
14.根據(jù)權(quán)利要求13所述的設備,其中用于在至少一個輪次中、為所述對象分配所述至少一個表決資源的裝置包括用于在所述至少一個輪次的每個輪次中、基于所述至少一個表決資源的優(yōu)先級而為所述對象分配可見的具有最高優(yōu)先級的表決資源的裝置。
15.根據(jù)權(quán)利要求13所述的設備,其中用于在所述至少一個輪次的每個輪次中、基于所述至少一個表決資源的優(yōu)先級而為所述對象分配可見的具有最高優(yōu)先級的表決資源的裝置包括用于如果所述具有最高優(yōu)先級的表決資源先前未被分配、則為所述對象分配所述具有最高優(yōu)先級的表決資源的裝置;用于如果所述具有最高優(yōu)先級的表決資源先前已經(jīng)被分配、則退出當前輪次的裝置。
16.根據(jù)權(quán)利要求13至15中任一項所述的設備,其中每個表決資源唯一地具有一個優(yōu)先級。
17.根據(jù)權(quán)利要求13至15中任一項所述的設備,其中所述用于基于已經(jīng)向所述對象分配的表決資源的數(shù)量、標識所述對象的類型的裝置包括用于當已經(jīng)向所述對象分配的表決資源的數(shù)量大于或者等于預定義閾值時、將所述對象的類型標識為主控的裝置,以及用于當已經(jīng)向所述對象分配的表決資源的數(shù)量小于所述預定義閾值時、將所述對象的類型標識為從屬的裝置。
18.根據(jù)權(quán)利要求13至15中任一項所述的設備,其中所述對象包括以下至少一個物理機、虛擬機、應用程序、進程以及線程。
19.一種基于對象具有的表決資源的數(shù)量而標識所述對象的裝置,包括 用于查找對所述對象可用的至少一個表決資源的裝置;用于在至少一個輪次中、選擇所述至少一個表決資源用于所述對象的裝置; 用于基于已經(jīng)選擇用于所述對象的表決資源的數(shù)量、標識所述對象的類型的裝置。
20.根據(jù)權(quán)利要求19所述的設備,其中所述用于在至少一個輪次中、選擇所述至少一個表決資源用于所述對象的裝置包括用于在所述至少一個輪次的每個輪次中、基于所述至少一個表決資源的優(yōu)先級而選擇可見的具有最高優(yōu)先級的表決資源用于所述對象的裝置。
21.根據(jù)權(quán)利要求19所述的設備,其中用于在所述至少一個輪次的每個輪次中、基于所述至少一個表決資源的優(yōu)先級而選擇可見的具有最高優(yōu)先級的表決資源用于所述對象的裝置包括用于如果所述具有最高優(yōu)先級的表決資源先前未被選擇、則選擇所述具有最高優(yōu)先級的表決資源的裝置;用于如果所述具有最高優(yōu)先級的表決資源先前已經(jīng)被選擇、則退出當前輪次的裝置。
22.根據(jù)權(quán)利要求19至21中任一項所述的設備,其中每個表決資源唯一地具有一個優(yōu)先級。
23.根據(jù)權(quán)利要求19至21中任一項所述的設備,其中所述用于基于已經(jīng)選擇用于所述對象的表決資源的數(shù)量、標識所述對象的類型的裝置包括用于當已經(jīng)選擇用于所述對象的表決資源的數(shù)量大于或者等于預定義閾值時、將所述對象的類型標識為主控的裝置;以及用于當已經(jīng)選擇用于所述對象的表決資源的數(shù)量小于預定義閾值時、將所述對象的類型標識為從屬的裝置。
24.根據(jù)權(quán)利要求19至21中任一項所述的設備,其中所述對象包括以下至少一個物理機、虛擬機、應用程序、進程以及線程。
全文摘要
本發(fā)明的實施方式涉及基于對象具有的表決資源的數(shù)量而標識對象的方法和設備。根據(jù)一個實施方式的方法,包括向?qū)ο筇峁┲辽僖粋€表決資源;在至少一個輪次中,為對象分配至少一個表決資源;基于已經(jīng)向?qū)ο蠓峙涞谋頉Q資源的數(shù)量,標識對象的類型。根據(jù)另一實施方式的方法,包括查找對對象可見的至少一個表決資源;在至少一個輪次中,選擇至少一個表決資源用于對象;基于已經(jīng)選擇用于對象的表決資源的數(shù)量,標識對象的類型。
文檔編號G06F15/16GK102541802SQ20101060314
公開日2012年7月4日 申請日期2010年12月17日 優(yōu)先權(quán)日2010年12月17日
發(fā)明者吳江, 李衛(wèi)華, 黃劍 申請人:伊姆西公司