1.redis單實例存在的問題及解決方式

redis單實例布置項目主要會出現(xiàn)下面三個方面的問題:

  1. 單點故障矢劲。如果這個redis實例掛掉赦拘,就需要重啟,或者重新布置實例卧须。這需要一定的時間另绩,在這個時間之內(nèi)儒陨,所有的請求都會透穿到數(shù)據(jù)庫花嘶。甚至在一些極端的情況下,整個物理機出現(xiàn)故障了蹦漠,就需要把硬盤取下來椭员,安裝到別的物理機上。無論是上述哪種情況笛园,都極為消耗時間隘击,對整個系統(tǒng)穩(wěn)定運行的威脅較大。
  2. 內(nèi)存不夠研铆。一臺redis的內(nèi)存本身是有限的埋同。如果需要往redis布置10個g的數(shù)據(jù),但是內(nèi)存只有4個g棵红,或8個g凶赁。所以內(nèi)存大小本身也是有限制的。
  3. 訪問壓力大逆甜。無論是socket io虱肄,而是CPU本身的計算,壓力都比較大交煞。
    那么如何解決這些問題呢咏窿?
    有一個理論叫做AKF,即從x素征,y集嵌,z三個維度來進行服務(wù)的拆分萝挤。
    (1)x軸方向:可以選擇主備模式,即一主多備纸淮,一臺redis作為主平斩,其他的多臺redis作為備⊙士椋“備”里存的是“主”的全量鏡像數(shù)據(jù)绘面,如下圖:


    aa.png

    這種情況下,就算主redis掛掉了侈沪,但是因為備redis里存的是全量數(shù)據(jù)揭璃,所以可以直接繞過出故障的主,而去訪問備亭罪,由此可見瘦馍,可以解決單點故障的問題。
    另外应役,既然這么多redis都已經(jīng)準(zhǔn)備好了情组,所以的操作都壓在一臺redis上,明顯造成了其他redis資源的浪費箩祥。所以一般都會讓主redis進行增刪改的操作院崇,讓其他的備redis進行查詢的操作,所以可以解決一部分訪問壓力的問題袍祖。
    由于存的是全量的數(shù)據(jù)底瓣,比如主redis里存了10個g的數(shù)據(jù),所以每個備redis里必須也存10個g的數(shù)據(jù)蕉陋,所以并沒能解決內(nèi)存不夠的問題捐凭。
    (2)y軸方向:從以上分析可以看出,x軸方向上的主備模式能夠解決單點故障的問題凳鬓,以及一部分訪問壓力的問題茁肠,但是沒能夠解決內(nèi)存限制的問題,所以y軸方向的布置主要解決的就是這個問題缩举。
    y軸方向上主要是根據(jù)業(yè)務(wù)功能的模塊兒進行拆分垦梆,比如購物系統(tǒng)中的訂單模塊數(shù)據(jù)放到一個redis,支付模塊兒的數(shù)據(jù)放到一個redis蚁孔,商品信息模塊兒放到一個redis奶赔,等等。如下圖:


    image.png

    按照業(yè)務(wù)的功能模塊兒進行拆分之后杠氢,本來10個g的數(shù)據(jù)站刑,可以現(xiàn)在y軸上的每個redis只需存放3個g或者4個g的數(shù)據(jù),所以解決了內(nèi)存限制的問題鼻百。由于每個redis上的數(shù)據(jù)分屬不同的模塊兒,所以訪問壓力的問題也得到了部分解決。每個模塊兒在x軸上都有備份笆环,所以單點故障的問題也得到了解決。
    (3)z軸方向:根據(jù)以上分析堕汞,x軸+y軸的拆分模式基本上已經(jīng)解決了單實例三個主要的痛點問題。但是有些情況晃琳,比如我的每個redis只能存10個g的數(shù)據(jù)讯检,但是下單的人比較多,訂單數(shù)據(jù)里需要存放20個g的數(shù)據(jù)卫旱,所以需要把本來存放訂單數(shù)據(jù)的redis再進行z軸上的拆分人灼,如下圖:
    image.png

    可見,原來的訂單數(shù)據(jù)在z軸上分為了兩個小模塊兒顾翼,每個小模塊兒作為主redis投放,都可以在x軸上有備redis。
    AKF拆分有效的解決了單點故障适贸,內(nèi)存限制灸芳,訪問壓力三個問題,但是在實踐中拜姿,仍然會存在一些問題的考量烙样。比如在主備數(shù)據(jù)同步的過程中,怎么保證數(shù)據(jù)的一致性問題砾隅,下節(jié)再作分析误阻。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末债蜜,一起剝皮案震驚了整個濱河市晴埂,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌寻定,老刑警劉巖儒洛,帶你破解...
    沈念sama閱讀 217,277評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異狼速,居然都是意外死亡琅锻,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評論 3 393
  • 文/潘曉璐 我一進店門向胡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來恼蓬,“玉大人,你說我怎么就攤上這事僵芹〈τ玻” “怎么了?”我有些...
    開封第一講書人閱讀 163,624評論 0 353
  • 文/不壞的土叔 我叫張陵拇派,是天一觀的道長荷辕。 經(jīng)常有香客問我凿跳,道長,這世上最難降的妖魔是什么疮方? 我笑而不...
    開封第一講書人閱讀 58,356評論 1 293
  • 正文 為了忘掉前任控嗜,我火速辦了婚禮,結(jié)果婚禮上骡显,老公的妹妹穿的比我還像新娘疆栏。我一直安慰自己,他們只是感情好惫谤,可當(dāng)我...
    茶點故事閱讀 67,402評論 6 392
  • 文/花漫 我一把揭開白布承边。 她就那樣靜靜地躺著,像睡著了一般石挂。 火紅的嫁衣襯著肌膚如雪博助。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,292評論 1 301
  • 那天痹愚,我揣著相機與錄音富岳,去河邊找鬼。 笑死拯腮,一個胖子當(dāng)著我的面吹牛窖式,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播动壤,決...
    沈念sama閱讀 40,135評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼萝喘,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了琼懊?” 一聲冷哼從身側(cè)響起阁簸,我...
    開封第一講書人閱讀 38,992評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎哼丈,沒想到半個月后启妹,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,429評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡醉旦,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,636評論 3 334
  • 正文 我和宋清朗相戀三年饶米,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片车胡。...
    茶點故事閱讀 39,785評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡檬输,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出匈棘,到底是詐尸還是另有隱情丧慈,我是刑警寧澤,帶...
    沈念sama閱讀 35,492評論 5 345
  • 正文 年R本政府宣布羹饰,位于F島的核電站伊滋,受9級特大地震影響碳却,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜笑旺,卻給世界環(huán)境...
    茶點故事閱讀 41,092評論 3 328
  • 文/蒙蒙 一昼浦、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧筒主,春花似錦关噪、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,723評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至藤韵,卻和暖如春虐沥,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背泽艘。 一陣腳步聲響...
    開封第一講書人閱讀 32,858評論 1 269
  • 我被黑心中介騙來泰國打工欲险, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人匹涮。 一個月前我還...
    沈念sama閱讀 47,891評論 2 370
  • 正文 我出身青樓天试,卻偏偏與公主長得像,于是被迫代替她去往敵國和親然低。 傳聞我的和親對象是個殘疾皇子喜每,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,713評論 2 354

推薦閱讀更多精彩內(nèi)容