1.一種集群系統(tǒng),其特征在于,該集群系統(tǒng)包括:多臺(tái)主機(jī);其中:
所述多臺(tái)主機(jī),用于競(jìng)爭(zhēng)獲取互斥鎖;所述互斥鎖在同一時(shí)刻只能被集群系統(tǒng)中的一臺(tái)主機(jī)占用;
所述多臺(tái)主機(jī)中的第一主機(jī),用于在獲取到所述互斥鎖后,啟動(dòng)所述第一主機(jī)的數(shù)據(jù)增量引擎;其中,所述數(shù)據(jù)增量引擎用于接收集群系統(tǒng)外的服務(wù)器發(fā)送的待處理消息,并將所述待處理消息寫入集群系統(tǒng)的消息隊(duì)列中。
2.如權(quán)利要求1所述的集群系統(tǒng),其特征在于,所述第一主機(jī)還用于:
在獲取到所述互斥鎖后,按照預(yù)設(shè)的第一時(shí)間間隔更新所述互斥鎖中的第一關(guān)鍵key值;所述第一key值用于判斷所述數(shù)據(jù)增量引擎是否工作正常。
3.如權(quán)利要求2所述的集群系統(tǒng),其特征在于,所述第一key值為心跳時(shí)間戳。
4.如權(quán)利要求2或3所述的集群系統(tǒng),其特征在于,所述多臺(tái)主機(jī)中的任一主機(jī)具體用于:
檢測(cè)所述互斥鎖中的第一key值,在確定所述第一key值沒有被正常更新后,獲取所述互斥鎖。
5.如權(quán)利要求4所述的集群系統(tǒng),其特征在于,所述多臺(tái)主機(jī)中的任一主機(jī)具體用于:
在所述第一key值在預(yù)設(shè)時(shí)長(zhǎng)內(nèi)沒有被更新時(shí),確定所述第一key值沒有被正常更新;或者,
在所述第一key值為空時(shí),確定所述第一key值沒有被正常更新。
6.如權(quán)利要求1所述的集群系統(tǒng),其特征在于,所述第一主機(jī)還用于:
在啟動(dòng)所述第一主機(jī)的數(shù)據(jù)增量引擎后,更新所述互斥鎖中的第二關(guān)鍵key值;所述第二key值用于標(biāo)識(shí)當(dāng)前獲取互斥鎖并啟動(dòng)數(shù)據(jù)增量引擎的主機(jī)。
7.如權(quán)利要求6所述的集群系統(tǒng),其特征在于,所述多臺(tái)主機(jī)中的任一主機(jī)還用于:
按照預(yù)設(shè)的第二時(shí)間間隔,檢測(cè)所述互斥鎖中的第二key值;
判斷檢測(cè)到的所述第二key值所標(biāo)識(shí)的主機(jī)是否為所述任一主機(jī);
若不是,且所述任一主機(jī)的數(shù)據(jù)增量引擎當(dāng)前處于工作狀態(tài),則關(guān)閉所述任一主機(jī)的數(shù)據(jù)增量引擎。
8.一種集群系統(tǒng),其特征在于,該集群系統(tǒng)包括:多臺(tái)主機(jī),其中:
所述多臺(tái)主機(jī),用于競(jìng)爭(zhēng)獲取分布式鎖;所述分布式鎖在同一時(shí)刻只能被集群系統(tǒng)中的一臺(tái)主機(jī)占用;
所述多臺(tái)主機(jī)中的第一主機(jī),用于在獲取到所述分布式鎖后,啟動(dòng)所述第一主機(jī)的數(shù)據(jù)增量引擎;其中,所述數(shù)據(jù)增量引擎用于接收集群系統(tǒng)外的服務(wù)器發(fā)送的待處理消息,并將所述待處理消息寫入集群系統(tǒng)的消息隊(duì)列中。
9.一種消息處理方法,其特征在于,該方法包括:
第一主機(jī)與集群系統(tǒng)中的其它主機(jī)競(jìng)爭(zhēng)獲取互斥鎖;所述互斥鎖在同一時(shí)刻只能被集群系統(tǒng)中的一臺(tái)主機(jī)占用;
在獲取到所述互斥鎖后,啟動(dòng)所述第一主機(jī)的數(shù)據(jù)增量引擎;
其中,所述數(shù)據(jù)增量引擎用于接收集群外的服務(wù)器發(fā)送的待處理消息,并將所述待處理消息寫入集群的消息隊(duì)列中。
10.如權(quán)利要求9所述的方法,其特征在于,第一主機(jī)與集群系統(tǒng)中的其它主機(jī)競(jìng)爭(zhēng)獲取互斥鎖,包括:
檢測(cè)集群系統(tǒng)的互斥鎖中的第一key值;在確定所述第一key值沒有被正常更新后,獲取所述互斥鎖;所述第一key值用于判斷所述數(shù)據(jù)增量引擎是否工作正常。
11.如權(quán)利要求10所述的方法,其特征在于,所述確定所述第一key值沒有被正常更新,包括:
在所述第一key值在預(yù)設(shè)時(shí)長(zhǎng)內(nèi)沒有被更新時(shí),確定所述第一key值沒有被正常更新;或者,
在所述第一key值為空時(shí),確定所述第一key值沒有被正常更新。
12.如權(quán)利要求10所述的方法,其特征在于,所述方法還包括:
在獲取到所述互斥鎖后,按照預(yù)設(shè)的第一時(shí)間間隔更新所述互斥鎖中的第一關(guān)鍵key值。
13.如權(quán)利要求9所述的方法,其特征在于,所述方法還包括:
在啟動(dòng)所述第一主機(jī)的數(shù)據(jù)增量引擎后,更新所述互斥鎖中的第二關(guān)鍵key值;所述第二key值用于標(biāo)識(shí)當(dāng)前獲取互斥鎖并啟動(dòng)數(shù)據(jù)增量引擎的主機(jī)。
14.一種消息處理方法,其特征在于,該方法包括:
第一主機(jī)按照預(yù)設(shè)的第二時(shí)間間隔,檢測(cè)所述互斥鎖中的第二key值;所述互斥鎖在同一時(shí)刻只能被集群系統(tǒng)中的一臺(tái)主機(jī)占用;
判斷檢測(cè)到的所述第二key值所標(biāo)識(shí)的主機(jī)是否為所述第一主機(jī);
若不是,且所述第一主機(jī)的數(shù)據(jù)增量引擎當(dāng)前處于工作狀態(tài),則關(guān)閉所述第一主機(jī)的數(shù)據(jù)增量引擎。
15.一種消息處理裝置,其特征在于,該裝置包括:
獲取模塊,用于與集群系統(tǒng)中的其它主機(jī)競(jìng)爭(zhēng)獲取互斥鎖;所述互斥鎖在同一時(shí)刻只能被集群系統(tǒng)中的一臺(tái)主機(jī)占用;
啟動(dòng)模塊,用于在所述獲取模塊獲取到所述互斥鎖后,啟動(dòng)所述第一主機(jī)的數(shù)據(jù)增量引擎;其中,所述數(shù)據(jù)增量引擎用于接收集群外的服務(wù)器發(fā)送的待處理消息,并將所述待處理消息寫入集群的消息隊(duì)列中。
16.一種消息處理裝置,其特征在于,該裝置包括:
檢測(cè)模塊,用于按照預(yù)設(shè)的第二時(shí)間間隔,檢測(cè)所述互斥鎖中的第二key值;
判斷模塊,用于判斷檢測(cè)到的所述第二key值所標(biāo)識(shí)的主機(jī)是否為所述第一主機(jī);
處理模塊,用于若確定檢測(cè)到的所述第二key值所標(biāo)識(shí)的主機(jī)不是所述第一主機(jī),且所述第一主機(jī)的數(shù)據(jù)增量引擎當(dāng)前處于工作狀態(tài),則關(guān)閉所述第一主機(jī)的數(shù)據(jù)增量引擎。