九色成人免费视频_久久一区视频_视频一区国产精品_精品视频在线观看

始創于2000年 股票代碼:831685
咨詢熱線:0371-60135900 注冊有禮 登錄
  • 掛牌上市企業
  • 60秒人工響應
  • 99.99%連通率
  • 7*24h人工
  • 故障100倍補償
您的位置: 網站首頁 > 幫助中心>文章內容

多IDC的數據分布設計(一)

發布時間:  2012/9/16 0:52:40

上個月跟某個朋友談及多IDC數據同時讀寫訪問的問題(tweet),當時覺得有不少解決方案,但覺得思路還不夠清晰。最近看了Google App Engine工程師Ryan Barrett介紹GAE后端數據服務的演講稿Transactions Across Datacenters(視頻),用Ryan的方法來分析這個問題后就豁然開朗。

按Ryan的方法,多IDC實現有以下幾種思路。

一、Master/slave

這個是多機房數據訪問最常用的方案,一般的需求用此方案即可。因此大家也經常提到“premature optimization is the root of all evil”。
優點:利用mysql replication即可實現,成熟穩定。
缺點:寫操作存在單點故障,master壞掉之后slave不能寫。另外slave的延遲也是個困擾人的小問題。

二、Multi-master

Multi-master指一個系統存在多個master, 每個master都具有read-write能力,需根據時間戳或業務邏輯合并版本。比如分布式版本管理系統git可以理解成multi-master模式。具備最終一致性。多版本數據修改可以借鑒Dynamo的vector clock等方法。

優點:解決了單點故障。
缺點:不易實現一致性,合并版本的邏輯復雜。

三、Two-phase commit(2PC)

Two-phase commit是一個比較簡單的一致性算法。由于一致性算法通常用神話(如Paxos的The Part-Time Parliament論文)來比喻容易理解,下面也舉個類似神話的例子。

某班要組織一個同學聚會,前提條件是所有參與者同意則活動舉行,任意一人拒絕則活動取消。用2PC算法來執行過程如下

Phase 1

Prepare: 組織者(coordinator)打電話給所有參與者(participant) ,同時告知參與者列表。
Proposal: 提出周六2pm-5pm舉辦活動。
Vote: participant需vote結果給coordinator:accept or reject。
Block: 如果accept, participant鎖住周六2pm-5pm的時間,不再接受其他請求。

Phase 2

Commit: 如果所有參與者都同意,組織者coodinator通知所有參與者commit, 否則通知abort,participant解除鎖定。

Failure 典型失敗情況分析

Participant failure:
任一參與者無響應,coordinator直接執行abort
Coordinator failure:
Takeover: 如果participant一段時間沒收到cooridnator確認(commit/abort),則認為coordinator不在了。這時候可自動成為Coordinator備份(watchdog)
Query: watchdog根據phase 1接收的participant列表發起query
Vote: 所有participant回復vote結果給watchdog, accept or reject
Commit: 如果所有都同意,則commit, 否則abort。

優點:實現簡單。
缺點:所有參與者需要阻塞(block),throughput低;無容錯機制,一節點失敗則整個事務失敗。

四、Three-phase commit (3PC)

Three-phase commit是一個2PC的改進版。2PC有一些很明顯的缺點,比如在coordinator做出commit決策并開始發送commit之后,某個participant突然crash,這時候沒法abort transaction, 這時候集群內實際上就存在不一致的情況,crash恢復后的節點跟其他節點數據是不同的。因此3PC將2PC的commit的過程1分為2,分成preCommit及commit, 如圖。
 


(圖片來源:http://en.wikipedia.org/wiki/File:Three-phase_commit_diagram.png)

從圖來看,cohorts(participant)收到preCommit之后,如果沒收到commit, 默認也執行commit, 即圖上的timeout cause commit。

如果coodinator發送了一半preCommit crash, watchdog接管之后通過query, 如果有任一節點收到commit, 或者全部節點收到preCommit, 則可繼續commit, 否則abort。

優點:允許發生單點故障后繼續達成一致。
缺點:網絡分離問題,比如preCommit消息發送后突然兩個機房斷開,這時候coodinator所在機房會abort, 另外剩余replicas機房會commit。

五、Paxos

Google Chubby的作者Mike Burrows說過, “there is only one consensus protocol, and that’s Paxos” – all other approaches are just broken versions of Paxos. 意即“世上只有一種一致性算法,那就是Paxos”,所有其他一致性算法都是Paxos算法的不完整版。相比2PC/3PC, Paxos算法的改進

  • P1a. 每次Paxos實例執行都分配一個編號,編號需要遞增,每個replica不接受比當前最大編號小的提案
  • P2. 一旦一個 value v 被replica通過,那么之后任何再批準的 value 必須是 v,即沒有拜占庭將軍(Byzantine)問題。拿上面請客的比喻來說,就是一個參與者一旦accept周六2pm-5pm的proposal, 就不能改變主意。以后不管誰來問都是accept這個value。
  • 一個proposal只需要多數派同意即可通過。因此比2PC/3PC更靈活,在一個2f+1個節點的集群中,允許有f個節點不可用。

另外Paxos還有很多約束的細節,特別是Google的chubby從工程實現的角度將Paxos的細節補充得非常完整。比如如何避免Byzantine問題,由于節點的持久存儲可能會發生故障,Byzantine問題會導致Paxos算法P2約束失效。

以上幾種方式原理比較如下

 

(圖片來源:http://snarfed.org/space/transactions_across_datacenters_io.html)

后文會繼續比較實踐環境選取何種策略合適。

(PS: 寫完后在Google Reader上發現本文跟王建碩最近發表的《關于兩個機房的討論》文章有點類似,特別是本文一、二方式。不過他的文章偏MySQL的實現,我的重點是一致性算法,大家可以有選擇性的閱讀。)

億恩-天使(QQ:530997) 電話 037160135991 服務器租用,托管歡迎咨詢。


本文出自:億恩科技【www.23lll.com】

服務器租用/服務器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經營性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經營性ICP/ISP/IDC證:豫B1.B2-20060070
  • 億恩南昌公司:
  • 經營性ICP/ISP證:贛B2-20080012
  • 服務器/云主機 24小時售后服務電話:0371-60135900
  • 虛擬主機/智能建站 24小時售后服務電話:0371-60135900
  • 專注服務器托管17年
    掃掃關注-微信公眾號
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權所有  地址:鄭州市高新區翠竹街1號總部企業基地億恩大廈  法律顧問:河南亞太人律師事務所郝建鋒、杜慧月律師   京公網安備41019702002023號
      0
     
     
     
     

    0371-60135900
    7*24小時客服服務熱線

     
     
    九色成人免费视频_久久一区视频_视频一区国产精品_精品视频在线观看
    99精品国产在热久久| 久久精品亚洲一区二区三区浴池| 亚洲一区二区在| 亚洲国产美女精品久久久久∴| 国产亚洲精品久久久久久| 欧美三级视频| 欧美日韩第一区日日骚| 欧美成人精品三级在线观看| 久久久久久亚洲综合影院红桃 | 欧美专区在线播放| 亚洲制服欧美中文字幕中文字幕| 99re在线精品| av成人福利| 一区二区三区国产| 一本色道久久综合亚洲二区三区| 亚洲精品欧美日韩专区| 亚洲娇小video精品| 亚洲国产成人在线| 亚洲日韩欧美一区二区在线| 亚洲人成免费| 亚洲免费电影在线| 一本色道久久综合亚洲二区三区| 99国产精品久久久久久久| 日韩视频中文字幕| 一本色道精品久久一区二区三区| 亚洲精品综合在线| 一区二区三区欧美激情| 中文一区二区| 亚洲欧美日韩国产中文| 午夜伦理片一区| 久久er99精品| 亚洲国产精品毛片| 亚洲欧洲在线播放| 99视频在线观看一区三区| 妖精成人www高清在线观看| 99精品视频免费观看视频| 一本色道久久综合亚洲精品婷婷| 亚洲一级在线观看| 欧美一区二区三区免费观看| 久久精品视频在线观看| 久久性色av| 欧美连裤袜在线视频| 国产精品成人av性教育| 国产精品影院在线观看| 国产一区二区三区黄| 亚洲电影av在线| 一个人看的www久久| 亚洲欧美日韩综合一区| 亚洲福利视频专区| 一区二区不卡在线视频 午夜欧美不卡在 | 国产精品一级久久久| 国产在线观看91精品一区| 亚洲福利视频专区| 亚洲视屏一区| 亚洲第一天堂av| 一个人看的www久久| 欧美一区久久| 欧美国产精品久久| 国产精品美女| 影音先锋久久资源网| 日韩亚洲一区二区| 欧美资源在线| 一区二区日韩精品| 久久精品99国产精品| 欧美成人精品激情在线观看| 欧美天天影院| 国产资源精品在线观看| 日韩视频免费观看| 欧美在线一区二区| 一区二区三区精品| 久久夜色撩人精品| 国产精品久久久久久久第一福利| 伊人久久亚洲美女图片| 亚洲在线观看| 99精品国产高清一区二区| 久久久www成人免费毛片麻豆| 欧美日本不卡高清| 红桃视频一区| 亚洲一区二区精品在线观看| 亚洲人成毛片在线播放| 欧美在线视频免费播放| 欧美色欧美亚洲另类二区| 在线观看91久久久久久| 午夜在线电影亚洲一区| 亚洲影视综合| 欧美激情一区二区三区蜜桃视频| 国产欧美在线播放| 日韩视频一区二区在线观看 | 亚洲高清一区二区三区| 国产一区二区三区四区hd| 亚洲国产美女| 性欧美xxxx视频在线观看| 亚洲精品在线电影| 久色成人在线| 国产精品久久国产三级国电话系列| 国内精品久久久久久久影视麻豆| 99re热这里只有精品免费视频| 久久er精品视频| 亚洲丝袜av一区| 久久久久久网站| 国产欧美一区二区三区另类精品| 亚洲国产精品久久人人爱蜜臀 | 亚洲一区二区三区三| 免播放器亚洲一区| 国产乱人伦精品一区二区| 亚洲精品久久| 久久国产精品99精品国产| 亚洲一二三区精品| 欧美高清不卡| 海角社区69精品视频| 一本色道久久综合狠狠躁的推荐| 亚洲黄色成人久久久| 久久精品盗摄| 国产精品久久久一区二区| 亚洲精品免费网站| 亚洲激情在线播放| 久久福利资源站| 国产精品高潮粉嫩av| 亚洲人成人一区二区三区| 久久精品水蜜桃av综合天堂| 午夜精品一区二区在线观看| 欧美美女福利视频| 极品日韩久久| 久久精品国产免费观看| 欧美在线精品一区| 国产精品午夜国产小视频| 亚洲巨乳在线| 亚洲精品视频在线观看免费| 欧美国产精品中文字幕| 伊人精品成人久久综合软件| 欧美一区二区三区另类| 羞羞漫画18久久大片| 国产精品成人午夜| 亚洲最新在线| 一区二区欧美视频| 欧美精品一区二区在线播放| 影音先锋在线一区| 亚洲第一精品福利| 久久天天狠狠| 好吊妞**欧美| 欧美在线播放一区| 麻豆精品网站| 在线欧美日韩精品| 亚洲国产91色在线| 麻豆精品视频在线观看| 黄色成人在线观看| 亚洲第一页中文字幕| 欧美极品一区| 亚洲精品专区| 亚洲手机在线| 国产精品久久福利| 亚洲素人在线| 先锋影音一区二区三区| 国产精品午夜视频| 亚洲欧美国产不卡| 久久国产精品久久国产精品| 国产亚洲日本欧美韩国| 久久国产欧美精品| 欧美成熟视频| 亚洲精品视频二区| 亚洲欧美视频在线观看| 国产欧美日韩综合一区在线播放 | 欧美日韩精品伦理作品在线免费观看 | 久久精品国产成人| 欧美大片第1页| 亚洲精品专区| 午夜激情亚洲| 国产偷自视频区视频一区二区| 亚洲男人的天堂在线aⅴ视频| 久久在线视频| 亚洲电影第三页| 夜色激情一区二区| 国产亚洲亚洲| 亚洲精品久久久久久久久久久久| 欧美精品一区二区三区在线播放| 一区二区三区久久精品| 性欧美video另类hd性玩具| 一区二区三区在线视频观看| 99视频精品| 国产精品每日更新在线播放网址| 欧美制服丝袜第一页| 欧美成人免费网| 一本色道久久综合狠狠躁的推荐| 久久久噜噜噜久久人人看| 亚洲韩国青草视频| 亚洲字幕在线观看| 国产亚洲视频在线观看| 亚洲美女免费视频| 欧美午夜在线一二页| 久久精品免费播放| 欧美日韩一区三区| 午夜久久久久久| 欧美国产视频在线| 亚洲在线黄色| 欧美大片网址| 亚洲欧美日本国产专区一区| 鲁大师影院一区二区三区| 正在播放亚洲一区| 美玉足脚交一区二区三区图片| 亚洲人午夜精品|