持續(xù)輸出面試題--分布式數(shù)據(jù)庫之redis

開篇介紹

大家好腊状,我是Java最全面試題庫的提褲姐,今天這篇是分布式技術(shù)的第二篇胰苏,主要介紹分布式redis醇疼;在后續(xù),會沿著第一篇開篇的知識線路一直總結(jié)下去秧荆,做到日更乙濒!如果我能做到百日百更,希望你也可以跟著百日百刷颁股,一百天養(yǎng)成一個好習(xí)慣。

Redis集群最大節(jié)點個數(shù)是多少?

16384個

Redis集群的主從復(fù)制模型是怎樣的?

為了使在部分節(jié)點失敗或者大部分節(jié)點無法通信的情況下集群仍然可用诉儒,所以集群使用了主從復(fù)制模型亏掀,每個點都會有N-1個復(fù)制品

Redis和 Redisson有什么關(guān)系?

Redisson是一個高級的分布式協(xié)調(diào)redis客服端,能幫助用戶在分布式環(huán)境中輕松實現(xiàn)一些java的對象(Bloom filter温算,BitSet间影,setSetMultimap蔓搞, ScoredSortedSet随橘,SortedSetMap机蔗,ConcurrentMapList梆掸, List MultimapQueue怪得, BlockingQueue卑硫, DequeBlocking Deque欢伏, Semaphore硝拧, LockReadWriteLock障陶, Atomi cLong抱究, CountDownLaPublish/ Subscribe媳维, HyperLogLog)

MySQL里有2000w數(shù)據(jù)侄刽, redis中只存20w的數(shù)據(jù)朋凉,如何保證 redis中的數(shù)據(jù)都是熱點數(shù)據(jù)?

redis內(nèi)存數(shù)據(jù)集大小上升到一定大小的時候杂彭,就會實行數(shù)據(jù)淘汰策略。

Redis集群方案應(yīng)該怎么做?都有哪些方案?

1.codis.
目前用的最多的集群方案亲怠,基本和 twemproxy一致的效果团秽,但它支持在節(jié)點數(shù)量改變情況下叭首,舊節(jié)點數(shù)據(jù)可恢復(fù)到新hash節(jié)點踪栋。

2.redis cluster3.0
自帶的集群,特點在于他的分布式算法不是一致性hash眷唉,而是hash槽的概念囤官,以及自身支持節(jié)點設(shè)置從節(jié)點。

3.在業(yè)務(wù)代碼層實現(xiàn)
起幾個毫無關(guān)聯(lián)的 redis實例治拿,在代碼層對key進行hash計算,然后去對應(yīng)的 redis實例操作數(shù)據(jù)见坑。這種方式對hash層代碼要求比較高捏检,考慮部分包括,節(jié)點失效后的替代算法方案熊楼,數(shù)據(jù)震蕩后的自動腳本恢復(fù)能犯,實例的監(jiān)控等等。

Redis集群方案什么情況下會導(dǎo)致整個集群不可用?

有A执泰,B渡蜻,C三個節(jié)點的集群,在沒有復(fù)制模型的情況下排苍,如果節(jié)點B失敗了学密,那么整個集群就會因為缺少5501-11000這個范圍的槽而不可用淘衙。

假如 Redis里面有1億個key,其中有10w個key是以某個固定的已知的前綴開頭的腻暮,如果將它們?nèi)空页鰜?

使用keys指令可以掃出指定模式的key列表幔翰。

對方接著追問如果這個 redis正在給線上的業(yè)務(wù)提供服務(wù)漩氨,那使用keys指令會有什么問題?這個時候你要回答 redis關(guān)鍵的一個特性redis的單線程的。keys指令會導(dǎo)致線程阻塞一段時間遗增,線上服務(wù)會停頓叫惊,直到指令執(zhí)行完畢,服務(wù)才能恢復(fù)做修。這個時候可以使用scan指令霍狰,scan指令可以無阻塞的提取出指定模式的key列表,但是會有一定的重復(fù)概率饰及,在客戶端做一次去重就可以了蔗坯,但是整體所花費的時間會比直接用keys指令長。

主從數(shù)據(jù)庫不一致如何解決場景描述宾濒?

對于主從庫,讀寫分離屏箍,如果主從庫更新同步有時差绘梦,就會導(dǎo)致主從庫數(shù)據(jù)的不一致
1、忽略這個數(shù)據(jù)不一致赴魁,在數(shù)據(jù)一致性要求不高的業(yè)務(wù)下卸奉,未必需要時時一致性
2、強制讀主庫颖御,使用一個高可用的主庫榄棵,數(shù)據(jù)庫讀寫都在主庫,添加一個緩存潘拱,提升數(shù)據(jù)讀取的性能疹鳄。
3、選擇性讀主庫芦岂,添加一個緩存瘪弓,用來記錄必須讀主庫的數(shù)據(jù),將哪個庫盔腔,哪個表杠茬,哪個主鍵月褥,作為緩存的key弛随,設(shè)置緩存失效的時間為主從庫同步的時間,如果緩存當(dāng)中有這個數(shù)據(jù)宁赤,直接讀取主庫舀透;如果緩存當(dāng)中沒有這個主鍵,就到對應(yīng)的從庫中讀取决左。

緩存與數(shù)據(jù)庫不一致怎么辦愕够?

假設(shè)采用的主存分離走贪,讀寫分離的數(shù)據(jù)庫,如果一個線程A先刪除緩存數(shù)據(jù)惑芭,然后將數(shù)據(jù)寫入到主庫當(dāng)中坠狡,這個時候,主庫和從庫同步?jīng)]有完成遂跟,線程B從緩存當(dāng)中讀取數(shù)據(jù)失敗逃沿,從從庫當(dāng)中讀取到舊數(shù)據(jù),然后更新至緩存幻锁,這個時候凯亮,緩存當(dāng)中的就是舊的數(shù)據(jù)。
發(fā)生上述不一致的原因在于哄尔,主從庫數(shù)據(jù)不一致問題假消,加入了緩存之后,主從不一致的時間被拉長了岭接;
處理:在從庫有數(shù)據(jù)更新之后富拗,將緩存當(dāng)中的數(shù)據(jù)也同時進行更新,即當(dāng)從庫發(fā)生了數(shù)據(jù)更新之后亿傅,向緩存發(fā)出刪除媒峡,淘汰這段時間寫入的舊數(shù)據(jù)。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末葵擎,一起剝皮案震驚了整個濱河市谅阿,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌酬滤,老刑警劉巖签餐,帶你破解...
    沈念sama閱讀 222,104評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異盯串,居然都是意外死亡氯檐,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評論 3 399
  • 文/潘曉璐 我一進店門体捏,熙熙樓的掌柜王于貴愁眉苦臉地迎上來冠摄,“玉大人,你說我怎么就攤上這事几缭『佑荆” “怎么了?”我有些...
    開封第一講書人閱讀 168,697評論 0 360
  • 文/不壞的土叔 我叫張陵年栓,是天一觀的道長拆挥。 經(jīng)常有香客問我,道長某抓,這世上最難降的妖魔是什么纸兔? 我笑而不...
    開封第一講書人閱讀 59,836評論 1 298
  • 正文 為了忘掉前任惰瓜,我火速辦了婚禮,結(jié)果婚禮上汉矿,老公的妹妹穿的比我還像新娘崎坊。我一直安慰自己,他們只是感情好洲拇,可當(dāng)我...
    茶點故事閱讀 68,851評論 6 397
  • 文/花漫 我一把揭開白布流强。 她就那樣靜靜地躺著,像睡著了一般呻待。 火紅的嫁衣襯著肌膚如雪打月。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,441評論 1 310
  • 那天蚕捉,我揣著相機與錄音奏篙,去河邊找鬼。 笑死迫淹,一個胖子當(dāng)著我的面吹牛秘通,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播敛熬,決...
    沈念sama閱讀 40,992評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼肺稀,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了应民?” 一聲冷哼從身側(cè)響起话原,我...
    開封第一講書人閱讀 39,899評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎诲锹,沒想到半個月后繁仁,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,457評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡归园,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,529評論 3 341
  • 正文 我和宋清朗相戀三年黄虱,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片庸诱。...
    茶點故事閱讀 40,664評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡捻浦,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出桥爽,到底是詐尸還是另有隱情朱灿,我是刑警寧澤,帶...
    沈念sama閱讀 36,346評論 5 350
  • 正文 年R本政府宣布聚谁,位于F島的核電站母剥,受9級特大地震影響滞诺,放射性物質(zhì)發(fā)生泄漏形导。R本人自食惡果不足惜环疼,卻給世界環(huán)境...
    茶點故事閱讀 42,025評論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望朵耕。 院中可真熱鬧炫隶,春花似錦、人聲如沸阎曹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽处嫌。三九已至栅贴,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間熏迹,已是汗流浹背檐薯。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留注暗,地道東北人坛缕。 一個月前我還...
    沈念sama閱讀 49,081評論 3 377
  • 正文 我出身青樓,卻偏偏與公主長得像捆昏,于是被迫代替她去往敵國和親赚楚。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,675評論 2 359