1 設計分布式系統需要考慮的異常 1.1 節點宕機 1.2 網絡異常 消息丟失、消息亂序(可以通過增加序列號解決)以及數據錯誤 1.3 分布式系統三態 在單機,只要不宕機,一個函數執行要么成功、要么失敗,但是分布式系統共下存在成功、失敗和超時。下面解釋一下超時的不確定性 ...
一言以蔽之: 分 按業務分。 按層次分。 按讀寫分。 按動靜分。 按流量分 負載均衡 。 按時間分 異步化 。 分 完以后還要保證系統的整體穩定性,需要的原則: 冗余和災備。 監控。 預案。 限流。 降級。 ...
2015-04-07 21:12 0 2227 推薦指數:
1 設計分布式系統需要考慮的異常 1.1 節點宕機 1.2 網絡異常 消息丟失、消息亂序(可以通過增加序列號解決)以及數據錯誤 1.3 分布式系統三態 在單機,只要不宕機,一個函數執行要么成功、要么失敗,但是分布式系統共下存在成功、失敗和超時。下面解釋一下超時的不確定性 ...
O’Reilly的電子書《Reactive Microservices Architecture》講述了微服務/分布式系統的一些設計原則,本文是筆者閱讀完此書后的理解。 微服務相比傳統的單體應用能夠帶來快速的響應,以小的系統產生大的影響。而隨着網絡加速、磁盤成本降低、RAM成本降低、多核 ...
作者:潘罡 (Van Pan) @ Microsoft 在正式介紹Service Fabric之前,我們認為應該首先介紹分布式系統的經典架構。 理解了分布式系統的演進過程可以極大程度上幫助理解Service Fabric以及Azure服務中所有針對分布式系統的優秀產品。 簡單系統 ...
我們常常會聽說,某個互聯網應用的服務器端系統多么牛逼,比如QQ拉、微信拉、淘寶拉。那么,一個互聯網應用的服務器端系統,到底牛逼在什么地方?為什么海量的用戶訪問,會讓一個服務器端系統變得更復雜?本文就是想從最基本的地方開始,探尋服務器端系統技術的基礎概念。 承載量是分布式系統存在的原因 當一個 ...
寫在最前: 1.為什么學習並記錄分布式設計理念一系列相關的東西 在日常工作中系統設計評審的時候,經常會有一些同事拋出一些概念,高可用性,一致性等等字眼,他們用這些最基本的概念去反駁系統最初的設計,但是很多人理解的可用性,一致性等等問題,都是自己拍腦袋想的,或者根本和最原始表達的意思就不是一個 ...
高性能分布式計算與存儲系統設計概要(上篇) 2012年底,末日之后,看到大家都在寫年末總結,我也忍不住想一試。工作已經3年半了,頭一次寫總結。雖然到現在仍是無名小碼農一名,但工作這些年,技術着實有不少積累。成長最大的,當然就是這篇文章標題提到的——高性能分布式 ...
高性能分布式計算與存儲系統設計概要(下篇) (上篇) 在上篇里,我們主要討論了,這個系統怎樣處理大數據的“讀”操作,當然還有一些細節沒有講述。下篇,我們將主要講述,“寫”操作是如何被處理的。我們都知道,如果只有“讀”,那幾乎是不用做任何數據同步的,也不會有 ...
什么是構建一個可維護和可擴展的系統的意義? 在早期,一個系統的形態,只是滿足用戶和服務器資源之間的通道,唯一要擴展和維護的是系統后面的資源,保證資源的可用和夠用,而系統本身的壓力並不大。 系統設計跟我們生活中大多數事情一樣,都需要花時間提前規划,能夠讓我們 ...