示出了本發(fā)明實施例中一種數(shù)據(jù)處理系統(tǒng)的結(jié)構(gòu)示意圖。
[0141]所述系統(tǒng)可以包括客戶端,中間層和計數(shù)主服務(wù)器。
[0142]客戶端:發(fā)送計數(shù)請求的一端。
[0143]中間層:包括兩大模塊,計數(shù)代理模塊和計數(shù)轉(zhuǎn)移模塊;主要負責(zé)接受計數(shù)請求,并執(zhí)行計數(shù)操作;向計數(shù)主服務(wù)器發(fā)送計數(shù)增加指令,向計數(shù)代理模塊發(fā)送計數(shù)減少指令;中間層的實現(xiàn)支持橫向和縱向擴展,以應(yīng)對高并發(fā)計數(shù)需求。
[0144]計數(shù)主服務(wù)器:根據(jù)中間層發(fā)送的指令,執(zhí)行計數(shù)全局增加操作。
[0145]客戶端向中間層發(fā)送計數(shù)請求指令。
[0146]中間層收到客戶端計數(shù)指令,由計數(shù)代理模塊執(zhí)行計數(shù)操作,計數(shù)結(jié)束后判斷是否達到計數(shù)轉(zhuǎn)移條件(這個條件可以是計數(shù)達到一定閾值或者轉(zhuǎn)移達到一定頻次或者兩者同時限制),如果轉(zhuǎn)移條件滿足,計數(shù)代理模塊向計數(shù)轉(zhuǎn)移模塊發(fā)送計數(shù)轉(zhuǎn)移指令,計數(shù)轉(zhuǎn)移模塊接受指令后,同時向計數(shù)服務(wù)器發(fā)送計數(shù)增加指令,向計數(shù)代理模塊發(fā)送計數(shù)減少指令,計數(shù)代理模塊接受計數(shù)減少指令后,實現(xiàn)計數(shù)的減少。
[0147]計數(shù)主服務(wù)器,接受到計數(shù)轉(zhuǎn)移模塊發(fā)送的計數(shù)增加指令,對相應(yīng)的計數(shù)值執(zhí)行增加操作。
[0148]綜上所述,本發(fā)明技術(shù)方案利用計數(shù)代理實體接收客戶端發(fā)送的計數(shù)請求指令,并根據(jù)計數(shù)請求指令中的數(shù)據(jù)的計數(shù)數(shù)量執(zhí)行計數(shù)操作;通過計數(shù)代理實體判斷計數(shù)結(jié)果是否滿足計數(shù)轉(zhuǎn)移條件;當(dāng)滿足時,利用計數(shù)轉(zhuǎn)移實體發(fā)送計數(shù)增加指令到計數(shù)服務(wù)器,以令計數(shù)服務(wù)器根據(jù)計數(shù)增加指令進行數(shù)據(jù)處理。通過在客戶端和Redis等內(nèi)存數(shù)據(jù)庫之間增加包括計數(shù)代理實體和技術(shù)轉(zhuǎn)移實體在內(nèi)的中間層代理的方式,使得Redis等內(nèi)存數(shù)據(jù)庫在被用于高并發(fā)計數(shù)這個應(yīng)用場景下,能夠滿足性能要求。
[0149]對于裝置實施例而言,由于其與方法實施例基本相似,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。
[0150]本說明書中的各個實施例均采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似的部分互相參見即可。
[0151]以上對本發(fā)明實施例所提供的一種數(shù)據(jù)處理方法和裝置,進行了詳細介紹,本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在【具體實施方式】及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
【主權(quán)項】
1.一種數(shù)據(jù)處理方法,其特征在于,包括: 通過計數(shù)代理實體接收客戶端發(fā)送的計數(shù)請求指令;所述計數(shù)請求指令包括數(shù)據(jù)的類型和數(shù)據(jù)的計數(shù)數(shù)量; 利用所述計數(shù)代理實體根據(jù)所述計數(shù)請求指令中的數(shù)據(jù)的計數(shù)數(shù)量執(zhí)行計數(shù)操作; 通過所述計數(shù)代理實體判斷計數(shù)結(jié)果是否滿足計數(shù)轉(zhuǎn)移條件; 當(dāng)滿足時,利用計數(shù)轉(zhuǎn)移實體發(fā)送計數(shù)增加指令到計數(shù)服務(wù)器,以令所述計數(shù)服務(wù)器根據(jù)所述計數(shù)增加指令進行數(shù)據(jù)處理;所述計數(shù)增加指令包括數(shù)據(jù)的類型和數(shù)據(jù)的增加數(shù)量。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述通過所述計數(shù)代理實體判斷計數(shù)結(jié)果是否滿足計數(shù)轉(zhuǎn)移條件,包括: 通過所述計數(shù)代理實體判斷當(dāng)前計數(shù)數(shù)值是否大于等于預(yù)設(shè)閾值,和/或,計數(shù)轉(zhuǎn)移頻次是否大于等于預(yù)設(shè)門限; 當(dāng)當(dāng)前計數(shù)數(shù)值大于等于預(yù)設(shè)閾值,和/或,計數(shù)轉(zhuǎn)移頻次大于等于預(yù)設(shè)門限時,確定計數(shù)結(jié)果滿足計數(shù)轉(zhuǎn)移條件; 當(dāng)當(dāng)當(dāng)前計數(shù)數(shù)值小于預(yù)設(shè)閾值,和/或,計數(shù)轉(zhuǎn)移頻次小于預(yù)設(shè)門限時,確定計數(shù)結(jié)果不滿足計數(shù)轉(zhuǎn)移條件。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 在利用計數(shù)轉(zhuǎn)移實體發(fā)送計數(shù)增加指令到計數(shù)服務(wù)器的同時,通過所述計數(shù)轉(zhuǎn)移實體發(fā)送計數(shù)減少指令至所述計數(shù)代理實體;所述計數(shù)減少指令包括數(shù)據(jù)的類型和數(shù)據(jù)的減少數(shù)量; 通過所述計數(shù)代理實體根據(jù)所述計數(shù)減少指令中的數(shù)據(jù)的類型和數(shù)據(jù)的減少數(shù)量,減少數(shù)據(jù)的數(shù)量。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述計數(shù)增加指令中的數(shù)據(jù)的增加數(shù)量與所述計數(shù)減少指令中的數(shù)據(jù)的減少數(shù)量相等。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述通過計數(shù)代理實體接收客戶端發(fā)送的計數(shù)請求指令之前,所述方法還包括: 選擇與所述計數(shù)請求指令中的數(shù)據(jù)的類型對應(yīng)的計數(shù)代理實體。
6.一種數(shù)據(jù)處理裝置,其特征在于,包括: 計數(shù)代理模塊,用于接收客戶端發(fā)送的計數(shù)請求指令;所述計數(shù)請求指令包括數(shù)據(jù)的類型和數(shù)據(jù)的計數(shù)數(shù)量; 所述計數(shù)代理模塊,還用于根據(jù)所述計數(shù)請求指令中的數(shù)據(jù)的計數(shù)數(shù)量執(zhí)行計數(shù)操作; 所述計數(shù)代理模塊,還用于判斷計數(shù)結(jié)果是否滿足計數(shù)轉(zhuǎn)移條件; 計數(shù)轉(zhuǎn)移模塊,用于當(dāng)計數(shù)結(jié)果滿足計數(shù)轉(zhuǎn)移條件時,發(fā)送計數(shù)增加指令到計數(shù)服務(wù)器,以令所述計數(shù)服務(wù)器根據(jù)所述計數(shù)增加指令進行數(shù)據(jù)處理;所述計數(shù)增加指令包括數(shù)據(jù)的類型和數(shù)據(jù)的增加數(shù)量。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述計數(shù)代理模塊,包括: 判斷模塊,用于判斷當(dāng)前計數(shù)數(shù)值是否大于等于預(yù)設(shè)閾值,和/或,計數(shù)轉(zhuǎn)移頻次是否大于等于預(yù)設(shè)門限; 確定模塊,用于當(dāng)當(dāng)前計數(shù)數(shù)值大于等于預(yù)設(shè)閾值,和/或,計數(shù)轉(zhuǎn)移頻次大于等于預(yù)設(shè)門限時,確定計數(shù)結(jié)果滿足計數(shù)轉(zhuǎn)移條件;當(dāng)當(dāng)當(dāng)前計數(shù)數(shù)值小于預(yù)設(shè)閾值,和/或,計數(shù)轉(zhuǎn)移頻次小于預(yù)設(shè)門限時,確定計數(shù)結(jié)果不滿足計數(shù)轉(zhuǎn)移條件。
8.根據(jù)權(quán)利要求6所述的裝置,其特征在于, 所述計數(shù)轉(zhuǎn)移模塊,還用于在發(fā)送計數(shù)增加指令到計數(shù)服務(wù)器的同時,發(fā)送計數(shù)減少指令至所述計數(shù)代理模塊;所述計數(shù)減少指令包括數(shù)據(jù)的類型和數(shù)據(jù)的減少數(shù)量; 所述計數(shù)代理模塊,還用于根據(jù)所述計數(shù)減少指令中的數(shù)據(jù)的類型和數(shù)據(jù)的減少數(shù)量,減少數(shù)據(jù)的數(shù)量。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于, 所述計數(shù)增加指令中的數(shù)據(jù)的增加數(shù)量與所述計數(shù)減少指令中的數(shù)據(jù)的減少數(shù)量相等。
10.根據(jù)權(quán)利要求6所述的裝置,其特征在于,還包括: 選擇模塊,用于在所述計數(shù)代理模塊接收客戶端發(fā)送的計數(shù)請求指令之前,選擇與所述計數(shù)請求指令中的數(shù)據(jù)的類型對應(yīng)的計數(shù)代理模塊。
【專利摘要】本發(fā)明提供了一種數(shù)據(jù)處理方法和裝置,其中,所述方法包括:通過計數(shù)代理實體接收客戶端發(fā)送的計數(shù)請求指令;所述計數(shù)請求指令包括數(shù)據(jù)的類型和數(shù)據(jù)的計數(shù)數(shù)量;利用所述計數(shù)代理實體根據(jù)所述計數(shù)請求指令中的數(shù)據(jù)的計數(shù)數(shù)量執(zhí)行計數(shù)操作;通過所述計數(shù)代理實體判斷計數(shù)結(jié)果是否滿足計數(shù)轉(zhuǎn)移條件;當(dāng)滿足時,利用計數(shù)轉(zhuǎn)移實體發(fā)送計數(shù)增加指令到計數(shù)服務(wù)器,以令所述計數(shù)服務(wù)器根據(jù)所述計數(shù)增加指令進行數(shù)據(jù)處理;所述計數(shù)增加指令包括數(shù)據(jù)的類型和數(shù)據(jù)的增加數(shù)量。本發(fā)明通過在客戶端和Redis等內(nèi)存數(shù)據(jù)庫之間增加中間層代理的方式,使得Redis等內(nèi)存數(shù)據(jù)庫在被用于高并發(fā)計數(shù)這個應(yīng)用場景下,能夠滿足性能要求。
【IPC分類】G06F17-30
【公開號】CN104794172
【申請?zhí)枴緾N201510149862
【發(fā)明人】牟蓋東
【申請人】北京奇藝世紀科技有限公司
【公開日】2015年7月22日
【申請日】2015年3月31日