两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種基于改進一致性哈希分布式緩存的方法和系統(tǒng)的制作方法

文檔序號:9754689閱讀:662來源:國知局
一種基于改進一致性哈希分布式緩存的方法和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于信息系統(tǒng)領(lǐng)域,具體涉及一種基于改進一致性哈希分布式緩存的方法和系統(tǒng)。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)特別是移動互聯(lián)網(wǎng)的發(fā)展,用戶量越來越大,而要求的響應(yīng)速度也是越來越快,這樣為了加快訪問速度,一個比較的方式就是在信息系統(tǒng)中使用緩存。緩存技術(shù)存儲熱點數(shù)據(jù),拉近集群對象數(shù)據(jù)與應(yīng)用之間的距離,是加速數(shù)據(jù)訪問、提供數(shù)據(jù)分布式共享的關(guān)鍵技術(shù),該技術(shù)對于提高系統(tǒng)的擴展能力、保障系統(tǒng)可靠性具有非常重要的作用。
[0003]分布式緩存大量存在于信息系統(tǒng)當(dāng)中,當(dāng)前分布式緩存系統(tǒng)主要有兩種:
[0004]一種是各個服務(wù)器緩存的內(nèi)容相同,客戶端訪問緩存比較簡單,訪問任何一臺機器即可,但是當(dāng)一臺服務(wù)器上的緩存數(shù)據(jù)發(fā)生變化時,需要將緩存數(shù)據(jù)同步到其他所有機器上,這樣雖然提高了系統(tǒng)的可靠性,但造成了系統(tǒng)緩存資源的浪費,當(dāng)機器增多時,數(shù)據(jù)同步時間也會增加,其代表是開源的Memcache。
[0005]另一種是以一致性哈希(Consistent Hashing)技術(shù)為代表,一致性哈希是將每個對象映射到圓環(huán)邊上的一個點,系統(tǒng)再將可用的節(jié)點機器映射到圓環(huán)的不同位置。查找某個對象對應(yīng)的機器時,需要用一致哈希算法計算得到對象對應(yīng)圓環(huán)邊上位置,沿著圓環(huán)邊上順時針查找直到遇到某個節(jié)點機器,這臺機器即為對象應(yīng)該保存的位置。其優(yōu)勢是緩存數(shù)據(jù)不需要復(fù)制。但是某臺服務(wù)器發(fā)生故障時,會丟失該部分緩存數(shù)據(jù),對此可以采用主備式一致性哈希分布式緩存方法,但是系統(tǒng)在大量時間里會有一半的服務(wù)器為靜默狀態(tài),浪費了大量資源。

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

[0006]本發(fā)明要解決的技術(shù)問題是,當(dāng)前分布式緩存系統(tǒng)不是可靠性和可用性較差,就是機器堆積造成系統(tǒng)資源浪費。
[0007]根據(jù)本發(fā)明提出一種基于改進一致性哈希分布式緩存的系統(tǒng),包括:
[0008]多個節(jié)點服務(wù)器,每個節(jié)點服務(wù)器包括主緩存區(qū)和副本緩存區(qū),其中:
[0009]所述主緩存區(qū)用于緩存根據(jù)一致性哈希算法該節(jié)點服務(wù)器上用戶寫入或者需要訪問的數(shù)據(jù);
[0010]所述副本緩存區(qū)用于緩存根據(jù)一致性哈希算法,所有節(jié)點服務(wù)器構(gòu)成的哈希環(huán)上的上一節(jié)點服務(wù)器的主緩存區(qū)的數(shù)據(jù)。
[0011]進一步,任一節(jié)點服務(wù)器的所述主緩存區(qū)數(shù)據(jù)發(fā)生變化,將發(fā)生變化的數(shù)據(jù)復(fù)制到哈希環(huán)上的下一節(jié)點服務(wù)器的副本緩存區(qū)。
[0012]進一步,當(dāng)某個節(jié)點服務(wù)器發(fā)生故障或者需要刪除時,其哈希環(huán)上的下一節(jié)點服務(wù)器需要合并主副緩存區(qū)的數(shù)據(jù)作為主緩存區(qū)數(shù)據(jù),復(fù)制到哈希環(huán)上的下下節(jié)點服務(wù)器的副本緩存區(qū);
[0013]其哈希環(huán)上的上一節(jié)點服務(wù)器的主緩存區(qū)數(shù)據(jù)復(fù)制到其下一節(jié)點服務(wù)器的副本緩存區(qū)。
[0014]進一步,當(dāng)新增某個節(jié)點服務(wù)器時,在新增后的哈希環(huán)上,該新增節(jié)點服務(wù)器的上一節(jié)點服務(wù)器的主緩存區(qū)數(shù)據(jù)復(fù)制到該節(jié)點服務(wù)器的副本緩存區(qū);下一節(jié)點服務(wù)器的主緩存區(qū)中現(xiàn)在訪問該新增節(jié)點服務(wù)器的數(shù)據(jù)復(fù)制到該新增節(jié)點服務(wù)器的主緩存區(qū)中;
[0015]下一節(jié)點服務(wù)器的主緩存區(qū)數(shù)據(jù)刪除已緩存在新增節(jié)點服務(wù)器的主緩存區(qū)的數(shù)據(jù)。
[0016]進一步,將該新增節(jié)點服務(wù)器的主緩存區(qū)數(shù)據(jù)復(fù)制到下一節(jié)點服務(wù)器的副本緩存區(qū)作為下一節(jié)點服務(wù)器的副本緩存區(qū)數(shù)據(jù);或者
[0017]將下一節(jié)點服務(wù)器原有緩存在主緩存區(qū)的數(shù)據(jù)刪除現(xiàn)在緩存在下一節(jié)點服務(wù)器的主緩存區(qū)的數(shù)據(jù),作為下一節(jié)點服務(wù)器的副本緩存區(qū)數(shù)據(jù)。
[0018]進一步,將所述下一節(jié)點服務(wù)器的主緩存區(qū)數(shù)據(jù)復(fù)制下下節(jié)點服務(wù)器的副本緩存區(qū),作為下下節(jié)點服務(wù)器的副本緩存區(qū)數(shù)據(jù);或者
[0019]將原有下下節(jié)點服務(wù)器的副本緩存區(qū)的數(shù)據(jù)刪除現(xiàn)在新增節(jié)點服務(wù)器的主緩存區(qū)數(shù)據(jù),作為下下節(jié)點服務(wù)器的副本緩存區(qū)數(shù)據(jù)。
[0020]根據(jù)本發(fā)明一方面,提出一種基于改進一致性哈希分布式緩存的方法,包括:
[0021]將緩存數(shù)據(jù)緩存在多個節(jié)點服務(wù)器,每個節(jié)點服務(wù)器包括主緩存區(qū)和副本緩存區(qū);
[0022]在每個節(jié)點服務(wù)器的所述主緩存區(qū)緩存根據(jù)一致性哈希算法該節(jié)點服務(wù)器上用戶寫入或者需要訪問的數(shù)據(jù);
[0023]在每個節(jié)點服務(wù)器的所述副本緩存區(qū)緩存根據(jù)一致性哈希算法,所有節(jié)點服務(wù)器構(gòu)成的哈希環(huán)上的上一節(jié)點服務(wù)器的主緩存區(qū)的數(shù)據(jù)。
[0024]進一步,當(dāng)任一節(jié)點服務(wù)器的所述主緩存區(qū)數(shù)據(jù)發(fā)生變化時,將發(fā)生變化的數(shù)據(jù)復(fù)制到哈希環(huán)上的下一節(jié)點服務(wù)器的副本緩存區(qū)。
[0025]進一步,當(dāng)某個節(jié)點服務(wù)器發(fā)生故障或者需要刪除時,其哈希環(huán)上的下一節(jié)點服務(wù)器需要合并主副緩存區(qū)的數(shù)據(jù)作為主緩存區(qū)數(shù)據(jù),復(fù)制到哈希環(huán)上的下下節(jié)點服務(wù)器的副本緩存區(qū);
[0026]其哈希環(huán)上的上一節(jié)點服務(wù)器的主緩存區(qū)數(shù)據(jù)復(fù)制到其下一節(jié)點服務(wù)器的副本緩存區(qū)。
[0027]進一步,當(dāng)新增某個節(jié)點服務(wù)器時,在新增后的哈希環(huán)上,該新增節(jié)點服務(wù)器的上一節(jié)點服務(wù)器的主緩存區(qū)數(shù)據(jù)復(fù)制到該節(jié)點服務(wù)器的副本緩存區(qū);下一節(jié)點服務(wù)器的主緩存區(qū)中現(xiàn)在訪問該新增節(jié)點服務(wù)器的數(shù)據(jù)復(fù)制到該新增節(jié)點服務(wù)器的主緩存區(qū)中;
[0028]下一節(jié)點服務(wù)器的主緩存區(qū)數(shù)據(jù)刪除已緩存在新增節(jié)點服務(wù)器的主緩存區(qū)的數(shù)據(jù)。
[0029]進一步,將該新增節(jié)點服務(wù)器的主緩存區(qū)數(shù)據(jù)復(fù)制到下一節(jié)點服務(wù)器的副本緩存區(qū)作為下一節(jié)點服務(wù)器的副本緩存區(qū)數(shù)據(jù);或者
[0030]將下一節(jié)點服務(wù)器原有緩存在主緩存區(qū)的數(shù)據(jù)刪除現(xiàn)在緩存在下一節(jié)點服務(wù)器的主緩存區(qū)的數(shù)據(jù),作為下一節(jié)點服務(wù)器的副本緩存區(qū)數(shù)據(jù)。
[0031]進一步,將所述下一節(jié)點服務(wù)器的主緩存區(qū)數(shù)據(jù)復(fù)制下下節(jié)點服務(wù)器的副本緩存區(qū),作為下下節(jié)點服務(wù)器的副本緩存區(qū)數(shù)據(jù);或者
[0032]將原有下下節(jié)點服務(wù)器的副本緩存區(qū)的數(shù)據(jù)刪除現(xiàn)在新增節(jié)點服務(wù)器的主緩存區(qū)數(shù)據(jù),作為下下節(jié)點服務(wù)器的副本緩存區(qū)數(shù)據(jù)。
[0033]本發(fā)明中,每個節(jié)點服務(wù)器既緩存了本節(jié)點服務(wù)器的數(shù)據(jù),又緩存了上一節(jié)點服務(wù)器的數(shù)據(jù),因此,可以有效的提高系統(tǒng)的可靠性和可用性,又可以避免浪費資源,減少緩存數(shù)據(jù)的同步次數(shù)。
[0034]通過以下參照附圖對本發(fā)明的示例性實施例的詳細(xì)描述,本發(fā)明的其它特征及其優(yōu)點將會變得清楚。
【附圖說明】
[0035]構(gòu)成說明書的一部分的附圖描述了本發(fā)明的實施例,并且連同說明書一起用于解釋本發(fā)明的原理。
[0036]參照附圖,根據(jù)下面的詳細(xì)描述,可以更加清楚地理解本發(fā)明,其中:
[0037]圖1為一種基于改進一致性哈希分布式緩存的系統(tǒng)的結(jié)構(gòu)示意圖。
[0038]圖2為哈希環(huán)上某節(jié)點服務(wù)器有故障或者需要刪除的實施例的示意圖。
[0039]圖3為在哈希環(huán)上新增某一節(jié)點服務(wù)器的實施例的示意圖。
[0040]圖4為一種基于改進一致性哈希分布式緩存的方法的實施例的流程圖。
【具體實施方式】
[0041]現(xiàn)在將參照附圖來詳細(xì)描述本發(fā)明的各種示例性實施例。應(yīng)注意到:除非另外具體說明,否則在這些實施例中闡述的部件和步驟的相對布置、數(shù)字表達(dá)式和數(shù)值不限制本發(fā)明的范圍。
[0042]同時,應(yīng)當(dāng)明白,為了便于描述,附圖中所示出的各個部分的尺寸并不是按照實際的比例關(guān)系繪制的。
[0043]以下對至少一個示例性實施例的描述實際上僅僅是說明性的,決不作為對本發(fā)明及其應(yīng)用或使用的任何限制。
[0044]對于相關(guān)領(lǐng)域普通技術(shù)人員已知的技術(shù)、方法和設(shè)備可能不作詳細(xì)討論,但在適當(dāng)情況下,所述技術(shù)、方法和設(shè)備應(yīng)當(dāng)被視為授權(quán)說明書的一部分。
[0045]在這里示出和討論的所有示例中,任何具體值應(yīng)被解釋為僅僅是示例性的,而不是作為限制。因此,示例性實施例的其它示例可以具有不同的值。
[0046]應(yīng)注意到:相似的標(biāo)號和字母在下面的附圖中表示類似項,因此,一旦某一項在一個附圖中被定義,則在隨后的附圖中不需要對其進行進一步討論。
[0047]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚明白,以下結(jié)合具體實施例,并參照附圖,對本發(fā)明進一步詳
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
德庆县| 双江| 自贡市| 凉城县| 会泽县| 武鸣县| 克拉玛依市| 灌阳县| 铜川市| 忻州市| 定陶县| 马龙县| 沂水县| 黄陵县| 东丽区| 池州市| 彝良县| 海淀区| 同江市| 涞源县| 临海市| 拉孜县| 彝良县| 保靖县| 麟游县| 宜良县| 定结县| 渭南市| 永顺县| 临夏县| 应城市| 什邡市| 句容市| 石城县| 太保市| 商河县| 延津县| 宁阳县| 义乌市| 介休市| 祁东县|