亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種集群一致性服務(wù)高并發(fā)下持久化的優(yōu)化方法

文檔序號:9787526閱讀:253來源:國知局
一種集群一致性服務(wù)高并發(fā)下持久化的優(yōu)化方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及分布式計算領(lǐng)域,具體是一種集群一致性服務(wù)高并發(fā)下持久化的優(yōu)化方法。
【背景技術(shù)】
[0002]在集群一致性服務(wù)的實現(xiàn)中,為應(yīng)對集群整體失效,如機(jī)房斷電,所有節(jié)點癱瘓的極端情況,需要對集群一致性信息進(jìn)行持久化,以便恢復(fù)集群一致性狀態(tài)。但持久化涉及1操作,代價高昂,對集群一致性服務(wù)的實現(xiàn)產(chǎn)生了一系列的影響。
[0003]若在節(jié)點的一致性協(xié)議實現(xiàn)線程中進(jìn)行持久化,一方面,由于各任務(wù)間對集群一致性信息的修改最終是串行的,持久化會使這個串行階段的運行時間增加,在高并發(fā)下,并行度增加時,將導(dǎo)致集群運行時的并發(fā)性下降;另一方面,由于在集群一致性服務(wù)的實現(xiàn)中,往往以響應(yīng)超時作為節(jié)點離線的判據(jù),而持久化會降低節(jié)點上集群一致性服務(wù)程序的響應(yīng)速度,可能使其它節(jié)點誤認(rèn)為該節(jié)點已離線,導(dǎo)致集群分裂。

【發(fā)明內(nèi)容】

[0004]本發(fā)明的目的在于提供一種集群一致性服務(wù)高并發(fā)下持久化的優(yōu)化方法,它能夠及時實現(xiàn)持久化,能夠保證集群一致性服務(wù)程序的響應(yīng)速度,能夠避免并發(fā)性下降及集群分裂,能夠保證集群運行效率。
[0005]本發(fā)明為實現(xiàn)上述目的,通過以下技術(shù)方案實現(xiàn):
[0006]—種集群一致性服務(wù)高并發(fā)下持久化的優(yōu)化方法,包括:
[0007]在節(jié)點處采用單獨的持久化線程,用于實現(xiàn)持久化并回復(fù)客戶端;
[0008]持久化線程的輔助隊列,輔助隊列中包含了所有要持久化的數(shù)據(jù)和回應(yīng)客戶端所需要的鏈接及返回結(jié)果;
[0009]在節(jié)點處采用一致性協(xié)議實現(xiàn)線程,用于將更新后的一致性信息和回應(yīng)客戶端的函數(shù)指針放入持久化線程的輔助隊列的尾部,并向持久化線程發(fā)送持久化消息。
[0010]所述持久化線程批量完成持久化任務(wù),將輔助隊列中的所有要持久化的數(shù)據(jù)合并為一個批量數(shù)據(jù),一次性持久化。
[0011 ]所述持久化線程的實現(xiàn)步驟為:
[0012]步驟I,等待一致性協(xié)議實現(xiàn)線程的消息,如果有消息,進(jìn)入步驟2;
[0013]步驟2,獲取輔助隊列中的所有持久化任務(wù);
[0014]步驟3,將所有持久化任務(wù)中的數(shù)據(jù)寫入一個buffer中;
[0015]步驟4,持久化buffer;
[0016]步驟5,反饋所有持久化任務(wù)涉及的客戶端;
[0017]步驟6,返回步驟I。
[0018]所述一致性協(xié)議實現(xiàn)線程的實現(xiàn)步驟為:
[0019]步驟I,處理更新一致性信息的請求;
[0020]步驟2,更新內(nèi)存中的一致性信息;
[0021]步驟3,將更新的一致性信息和回應(yīng)客戶端的函數(shù)指針放入持久化線程的輔助隊列的尾部;
[0022]步驟4,通知持久化線程;
[0023]步驟5,繼續(xù)處理其它請求。
[0024]對比現(xiàn)有技術(shù),本發(fā)明的有益效果在于:
[0025]1、本發(fā)明在節(jié)點處采用單獨的持久化線程,用于實現(xiàn)持久化并回復(fù)客戶端,能夠保證客戶端得到回應(yīng),能夠保證回復(fù)前持久化已完成,能夠及時實現(xiàn)持久化,并且持久化的損耗僅影響發(fā)起寫的客戶端本身,不影響其他客戶端,能夠保證集群一致性服務(wù)程序的響應(yīng)速度。
[0026]2、本發(fā)明采用一致性協(xié)議實現(xiàn)線程,用于將更新后的一致性信息和回應(yīng)客戶端的函數(shù)指針放入持久化線程的輔助隊列的尾部,并向持久化線程發(fā)送持久化消息,一致性協(xié)議實現(xiàn)線程處理的都是內(nèi)存操作,速度很快,能夠保證在并發(fā)度增加后,集群性能不出現(xiàn)衰減,能夠避免并發(fā)性下降及集群分裂,能夠保證集群運行效率。
[0027]3、所述持久化線程批量完成持久化任務(wù),將輔助隊列中的所有要持久化的數(shù)據(jù)合并為一個批量數(shù)據(jù),一次性持久化。持久化線程將持久化請求批量完成,持久化完成后批量回復(fù)客戶端,批量持久化的時間與單個持久化的時間相同,在高并發(fā)下的等待時間與并發(fā)度無關(guān),能夠降低持久化壓力。
[0028]4、所述持久化線程的實現(xiàn)步驟為:
[0029]步驟I,等待一致性協(xié)議實現(xiàn)線程的消息,如果有消息,進(jìn)入步驟2;
[0030]步驟2,獲取輔助隊列中的所有持久化任務(wù);
[0031 ]步驟3,將所有持久化任務(wù)中的數(shù)據(jù)寫入一個buffer中;
[0032]步驟4,持久化buffer;
[0033]步驟5,反饋所有持久化任務(wù)涉及的客戶端;
[0034]步驟6,返回步驟I。
[0035]采用單獨的持久化線程批量完成持久化任務(wù),能夠提高持久化效率,能夠保證客戶端得到回應(yīng),能夠保證回復(fù)前持久化已完成。
[0036]5、所述一致性協(xié)議實現(xiàn)線程的實現(xiàn)步驟為:
[0037]步驟I,處理更新一致性信息的請求;
[0038]步驟2,更新內(nèi)存中的一致性信息;
[0039]步驟3,將更新的一致性信息和回應(yīng)客戶端的函數(shù)指針放入持久化線程的輔助隊列的尾部;
[0040]步驟4,通知持久化線程;
[0041 ] 步驟5,繼續(xù)處理其它請求。
[0042]一次性協(xié)議實現(xiàn)線程不進(jìn)行持久化處理,僅為持久化線程傳遞相關(guān)數(shù)據(jù),一致性協(xié)議實現(xiàn)線程處理的都是內(nèi)存操作,速度很快,能夠保證在并發(fā)度增加后,集群性能不出現(xiàn)衰減,能夠避免并發(fā)性下降及集群分裂。
【附圖說明】
[0043]附圖1是本發(fā)明的時序圖。
【具體實施方式】
[0044]下面結(jié)合具體實施例,進(jìn)一步闡述本發(fā)明。應(yīng)理解,這些實施例僅用于說明本發(fā)明而不用于限制本發(fā)明的范圍。此外應(yīng)理解,在閱讀了本發(fā)明講授的內(nèi)容之后,本領(lǐng)域技術(shù)人員可以對本發(fā)明作各種改動或修改,這些等價形式同樣落于本申請所附權(quán)利要求書所限定的范圍。
[0045]本發(fā)明所述是一種集群一致性服務(wù)高并發(fā)下持久化的優(yōu)化方法,包括:
[0046]在節(jié)點處采用單獨的持久化線程,用于實現(xiàn)持久化并回復(fù)客戶端。
[0047]持久化線程的操作序列為:
[0048]I)從輔助隊列頭部獲取等待持久化數(shù)據(jù);
[0049]2)持久化數(shù)據(jù);
[0050]3)將結(jié)果返回給客戶端。
[0051]采用單獨的持久化線程,能夠保證客戶端得到回應(yīng),能夠保證回復(fù)前持久化已完成,能夠及時實現(xiàn)持久化,并且持久化的損耗僅影響持久化線程本身,能夠保證集群一致性服務(wù)程序的響應(yīng)速度。
[0052]持久化線程的輔助隊列,輔助隊列中包含了所有要持久化的數(shù)據(jù)和回應(yīng)客戶端所需要的鏈接及返回結(jié)果。
[0053]在節(jié)點處采用一致性協(xié)議實現(xiàn)線程,用于將更新后的一致性信息和回應(yīng)客戶端的函數(shù)指針放入持久化線程的輔助隊列的尾部,并向持久化線程發(fā)送持久化消息。
[0054]一致性協(xié)議實現(xiàn)線程的操作序列為:
[0055]I)更新內(nèi)存中的一致性信息;
[0056]2)將更新后的一致性信息發(fā)送給持久化線程。
[0057]有專門的持久化線程實現(xiàn)持久化并返回客戶端,持久化的損耗僅影響持久化線程本身,而一致性協(xié)議實現(xiàn)線程處理的仍然都是內(nèi)存操作,速度很快,能夠避免并發(fā)性下降及集群分列。
[0058]為了降低持久化壓力,所述持久化線程批量完成持久化任務(wù),將輔助隊列中的所有要持久化的數(shù)據(jù)合并為一個批量數(shù)據(jù),一次性持久化。
[0059]持久化線程的操作序列變?yōu)?
[0060]I)從輔助隊列獲取所有持久化任務(wù);
[0061 ] 2)將所有持久化數(shù)據(jù)持久化為一個文件;
[0062]3)反饋所有相關(guān)客戶端。
[0063]集群一致性服務(wù)一次持久化請求的相關(guān)數(shù)據(jù)量不大,遠(yuǎn)遠(yuǎn)達(dá)不到影響磁盤性能的程度,合并后的批量數(shù)據(jù)也不會大到影響磁盤性能的程度,而影響性能最大的因素是持久化的次數(shù)。持久化線程將持久化請求批量完成,持久化完成后批量回復(fù)客戶端,批量持久化的時間與單個持久化的時間相同,在高并發(fā)下的等待時間與并發(fā)度無關(guān),能夠降低持久化壓力。
[0064]本發(fā)明采用持久化線程和一致性協(xié)議實現(xiàn)線程來實現(xiàn)。
[0065]所述持久化線程的實現(xiàn)步驟為:
[0066]步驟I,等待一致性協(xié)議實現(xiàn)線程的消息,如果有消息,進(jìn)入步驟2;
[0067]步驟2,獲取輔助隊列中的所有持久化任務(wù);
[0068]步驟3,將所有持久化任務(wù)中的數(shù)據(jù)寫入一個buffer中;
[0069]步驟4,持久化buffer;
[0070]步驟5,反饋所有持久化任務(wù)涉及的客戶端;
[0071]步驟6,返回步驟I。
[0072]所述一致性協(xié)議實現(xiàn)線程的實現(xiàn)步驟為:
[0073]步驟I,處理更新一致性信息的請求;
[0074]步驟2,更新內(nèi)存中的一致性信息;
[0075]步驟3,將更新的一致性信息和回應(yīng)客戶端的函數(shù)指針放入持久化線程的輔助隊列的尾部;
[0076]步驟4,通知持久化線程;
[0077]步驟5,繼續(xù)處理其它請求。
[0078]顯然,本發(fā)明的上述實施例僅僅是為清楚地說明本發(fā)明所作的舉例,而并非是對本發(fā)明的實施方式的限定。對于所屬領(lǐng)域的普通技術(shù)人員來說,在上述說明的基礎(chǔ)上還可以做出其它不同形式的變化或變動。這里無需也無法對所有的實施方式予以窮舉。而這些屬于本發(fā)明的實質(zhì)精神所引伸出的顯而易見的變化或變動仍屬于本發(fā)明的保護(hù)范圍。
【主權(quán)項】
1.一種集群一致性服務(wù)高并發(fā)下持久化的優(yōu)化方法,其特征是:包括:在節(jié)點處采用單獨的持久化線程,用于實現(xiàn)持久化并回復(fù)客戶端; 持久化線程的輔助隊列,輔助隊列中包含了所有要持久化的數(shù)據(jù)和回應(yīng)客戶端所需要的鏈接及返回結(jié)果; 在節(jié)點處采用一致性協(xié)議實現(xiàn)線程,用于將更新后的一致性信息和回應(yīng)客戶端的函數(shù)指針放入持久化線程的輔助隊列的尾部,并向持久化線程發(fā)送持久化消息。2.根據(jù)權(quán)利要求1所述的一種集群一致性服務(wù)高并發(fā)下持久化的優(yōu)化方法,其特征是:所述持久化線程批量完成持久化任務(wù),將輔助隊列中的所有要持久化的數(shù)據(jù)合并為一個批量數(shù)據(jù),一次性持久化。3.根據(jù)權(quán)利要求2所述的一種集群一致性服務(wù)高并發(fā)下持久化的優(yōu)化方法,其特征是:所述持久化線程的實現(xiàn)步驟為: 步驟I,等待一致性協(xié)議實現(xiàn)線程的消息,如果有消息,進(jìn)入步驟2; 步驟2,獲取輔助隊列中的所有持久化任務(wù); 步驟3,將所有持久化任務(wù)中的數(shù)據(jù)寫入一個buffer中; 步驟4,持久化buf f er ; 步驟5,反饋所有持久化任務(wù)涉及的客戶端; 步驟6,返回步驟I。4.根據(jù)權(quán)利要求1所述的一種集群一致性服務(wù)高并發(fā)下持久化的優(yōu)化方法,其特征是:所述一致性協(xié)議實現(xiàn)線程的實現(xiàn)步驟為: 步驟I,處理更新一致性信息的請求; 步驟2,更新內(nèi)存中的一致性信息; 步驟3,將更新的一致性信息和回應(yīng)客戶端的函數(shù)指針放入持久化線程的輔助隊列的尾部; 步驟4,通知持久化線程; 步驟5,繼續(xù)處理其它請求。
【專利摘要】本發(fā)明公開了一種集群一致性服務(wù)高并發(fā)下持久化的優(yōu)化方法,主要涉及分布式計算領(lǐng)域。包括:在節(jié)點處采用單獨的持久化線程,用于實現(xiàn)持久化并回復(fù)客戶端;持久化線程的輔助隊列,輔助隊列中包含了所有要持久化的數(shù)據(jù)和回應(yīng)客戶端所需要的鏈接及返回結(jié)果;在節(jié)點處采用一致性協(xié)議實現(xiàn)線程,用于將更新后的一致性信息和回應(yīng)客戶端的函數(shù)指針放入持久化線程的輔助隊列的尾部,并向持久化線程發(fā)送持久化消息。本發(fā)明的有益效果在于:它能夠及時實現(xiàn)持久化,能夠保證集群一致性服務(wù)程序的響應(yīng)速度,能夠避免并發(fā)性下降及集群分裂,能夠保證集群運行效率。
【IPC分類】G06F17/30
【公開號】CN105550319
【申請?zhí)枴緾N201510931307
【發(fā)明人】崔維力, 武新, 何新敏
【申請人】天津南大通用數(shù)據(jù)技術(shù)股份有限公司
【公開日】2016年5月4日
【申請日】2015年12月12日
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1