《從零開始學(xué)架構(gòu)》讀書筆記七:存儲高可用

存儲高可用的本質(zhì)就是通過冗余來實現(xiàn),這就必然涉及到數(shù)據(jù)之間的復(fù)制,如下四點是我們做設(shè)計的時候必須要考慮到的問題:
1.數(shù)據(jù)如何復(fù)制
2.各個節(jié)點的職責(zé)
3.如何應(yīng)對復(fù)制延遲
4.如何應(yīng)對復(fù)制中斷
以下針對業(yè)界一些通用的方案做一些整理

主備復(fù)制:

主備的優(yōu)點就是設(shè)計簡單腾誉,無需考慮狀態(tài)居夹。幾乎所有的存儲系統(tǒng)都提供了主備復(fù)制策略,缺點就備機只有在故障的時候才有用惊完,浪費硬件成本。故障后還需要人工干預(yù)恢復(fù),無法自動恢復(fù)螟深。

主從復(fù)制:

和主備的區(qū)別就是從機提供讀操作。對外提供查詢服務(wù)烫葬,因為從機也對外提供服務(wù)那么我們就必須在數(shù)據(jù)復(fù)制時候進行一定的監(jiān)控界弧,當(dāng)延遲過高時候凡蜻,需要人工干涉解決。
主從與主備相比具有如下優(yōu)勢:
1.主從復(fù)制在主機故障時垢箕,讀的相關(guān)業(yè)務(wù)不受影響划栓。
2.從機也對外提供服務(wù),發(fā)揮了硬件性能
但是也存在缺點条获,就是引入了新的復(fù)雜度忠荞,主要體現(xiàn)在客戶端需要感知主從關(guān)系,并將不同的操作發(fā)給不同的機器進行處理(mybatis插件)

主備倒換與主存倒換:

主備和主從方案存在兩個共性問題:
1.主機故障后帅掘,無法提供寫服務(wù)
2.如果主機無法恢復(fù)委煤,需要人工指定新的主機角色。
要實現(xiàn)一個完善的倒換方案修档,我們需要考慮如下幾個關(guān)鍵的設(shè)計點:
(1)主備狀態(tài)判斷:
狀態(tài)傳遞的渠道碧绞,是相互連接還是三方仲裁
狀態(tài)檢測的內(nèi)容,如機器是否掉電吱窝,進程是否存在讥邻,響應(yīng)是否緩慢等
(2)倒換決策:
倒換時機-什么情況下備機或從機升級為主機(三分鐘連續(xù)重啟三次,響應(yīng)超過三秒等等策略)
倒換策略-原來的主機恢復(fù)后是做從機還是繼續(xù)倒換為主機癣诱?
自動程度-是否需要人工確認
(3)數(shù)據(jù)沖突解決:
比如新增數(shù)據(jù)的主鍵沖突计维,必須要分析現(xiàn)有的業(yè)務(wù)場景做出一定的應(yīng)對
常見的架構(gòu)
1.互聯(lián)式


互聯(lián)式.jpg

相比主備架構(gòu)在此基礎(chǔ)上多了狀態(tài)傳遞的通道,客戶端為了在倒換后正常訪問撕予,因為主備之間共享一個對客戶端來說唯一的IP地址鲫惶,比如虛擬IP。這種策略的劣勢主要表現(xiàn)在如果主機沒有故障实抡,但是狀態(tài)通道故障了欠母,那么備機會升級為主機,那么就有可能出現(xiàn)雙主機的情況吆寨。

2.中介式


中介式.jpg

通常的zookeeper是比較常用的中介

3.模擬式


模擬式.jpg

核心思想就是主機和備機之間模擬讀寫操作來探測主機的狀態(tài)赏淌,這種方案實現(xiàn)起來較為簡單,成本低啄清,因為基于HTTP連接所以狀態(tài)信息比較匱乏六水,比如不能檢測cpu負載、i/o負載等辣卒。

主主復(fù)制

這種方案兩臺機器都提供讀寫服務(wù)掷贾,這種方案一般處理業(yè)務(wù)上可以覆蓋,可丟失的數(shù)據(jù)荣茫,比如session想帅,論壇的草稿數(shù)據(jù)等。

數(shù)據(jù)分區(qū)

指將數(shù)據(jù)按照一定的規(guī)則進行分區(qū)啡莉,不同分區(qū)分布在不同的地理位置上港准,規(guī)避地理災(zāi)害造成的數(shù)據(jù)丟失問題旨剥。通常有如下三種策略
1.集中式(北京,上海浅缸,廣州)-----西安備份中心 特點擴展容易轨帜,成本高
2.互備式(北京-上海,上海-----廣州) 特點設(shè)計擴展麻煩疗杉,成本低
3.獨立式(北京-天津阵谚,上海-杭州) 特點擴展容易,成本高

存儲高可用主要面臨的是數(shù)據(jù)一致性如何保障的問題烟具。分布式事務(wù)算法主要的目的是為了保證分散在多個節(jié)點的數(shù)據(jù)統(tǒng)一提交或回滾,以滿足ACID的要求;而分布式一致性算法主要的目的是為了保證同一份數(shù)據(jù)在多個節(jié)點上的一致性奠蹬,以滿足CAP中的CP要求朝聋。了解這些算法可以參考筆者所寫的《從零開始學(xué)架構(gòu)、從paxos到zookeeper》讀書筆記五:分布式系統(tǒng)基本理論一文囤躁。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末冀痕,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子狸演,更是在濱河造成了極大的恐慌言蛇,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,252評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件宵距,死亡現(xiàn)場離奇詭異腊尚,居然都是意外死亡,警方通過查閱死者的電腦和手機满哪,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,886評論 3 399
  • 文/潘曉璐 我一進店門婿斥,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人哨鸭,你說我怎么就攤上這事民宿。” “怎么了像鸡?”我有些...
    開封第一講書人閱讀 168,814評論 0 361
  • 文/不壞的土叔 我叫張陵活鹰,是天一觀的道長。 經(jīng)常有香客問我只估,道長志群,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,869評論 1 299
  • 正文 為了忘掉前任仅乓,我火速辦了婚禮赖舟,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘夸楣。我一直安慰自己宾抓,他們只是感情好子漩,可當(dāng)我...
    茶點故事閱讀 68,888評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著石洗,像睡著了一般幢泼。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上讲衫,一...
    開封第一講書人閱讀 52,475評論 1 312
  • 那天缕棵,我揣著相機與錄音,去河邊找鬼涉兽。 笑死招驴,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的枷畏。 我是一名探鬼主播别厘,決...
    沈念sama閱讀 41,010評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼拥诡!你這毒婦竟也來了触趴?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,924評論 0 277
  • 序言:老撾萬榮一對情侶失蹤渴肉,失蹤者是張志新(化名)和其女友劉穎冗懦,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體仇祭,經(jīng)...
    沈念sama閱讀 46,469評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡披蕉,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,552評論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了前塔。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片嚣艇。...
    茶點故事閱讀 40,680評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖华弓,靈堂內(nèi)的尸體忽然破棺而出食零,到底是詐尸還是另有隱情,我是刑警寧澤寂屏,帶...
    沈念sama閱讀 36,362評論 5 351
  • 正文 年R本政府宣布贰谣,位于F島的核電站,受9級特大地震影響迁霎,放射性物質(zhì)發(fā)生泄漏吱抚。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,037評論 3 335
  • 文/蒙蒙 一考廉、第九天 我趴在偏房一處隱蔽的房頂上張望秘豹。 院中可真熱鬧,春花似錦昌粤、人聲如沸既绕。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,519評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽凄贩。三九已至誓军,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間疲扎,已是汗流浹背昵时。 一陣腳步聲響...
    開封第一講書人閱讀 33,621評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留椒丧,地道東北人壹甥。 一個月前我還...
    沈念sama閱讀 49,099評論 3 378
  • 正文 我出身青樓,卻偏偏與公主長得像壶熏,于是被迫代替她去往敵國和親盹廷。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,691評論 2 361

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