分散式base

mcxiaoracle發表於2022-06-21

Basically Available(基本可用)

基本可用是相對於正常的系統來說的,常見如下情況

  • 響應時間上的損失:正常情況下的搜尋引擎0.5秒即返回給使用者結果,而基本可用看的搜尋結果可能要1秒,2秒甚至3秒(超過3秒使用者就接受不了了)
  • 功能上的損失:在一個電商網站上,正常情況下,使用者可以順利完成每一筆訂單,但是到了促銷時間,可能為了應對併發,保護購物系統的穩定性,部分使用者會被引導到一個降級頁面


Basically Available(基本可用)

基本可用是相對於正常的系統來說的,常見如下情況

  • 響應時間上的損失:正常情況下的搜尋引擎0.5秒即返回給使用者結果,而基本可用看的搜尋結果可能要1秒,2秒甚至3秒(超過3秒使用者就接受不了了)
  • 功能上的損失:在一個電商網站上,正常情況下,使用者可以順利完成每一筆訂單,但是到了促銷時間,可能為了應對併發,保護購物系統的穩定性,部分使用者會被引導到一個降級頁面

弱一致性
和強一致性相對
系統並不保證連續程式或者執行緒的訪問都會返回最新的更新過的值。系統在資料寫入成功之後,  不承諾立即可以讀到最新寫入的值 ,也不會具體的承諾多久之後可以讀到。但會  儘可能保證在某個時間級別(比如秒級別)之後,可以讓資料達到一致性狀態

最終一致性是弱一致性的特定形式

對於軟狀態,我們允許中間狀態存在,但不可能一直是中間狀態,必須要有個期限,系統保證在沒有後續更新的前提下,在這個期限後,系統最終返回上一次更新操作的值,從而達到資料的最終一致性,這個容忍期限(不一致視窗的時間)取決於通訊延遲,系統負載,資料複製方案設計,複製副本個數等,DNS是一個典型的最終一致性系統。


最終一致性模型變種

    如果節點A在更新完某個資料後通知了節點B,那麼節點B的訪問修改操作都是基於A更新後的值,同時,和節點A沒有因果關係的C的資料訪問則沒有這樣的限制



    • 讀己之所寫(Read your writes)


    因果一致性的特定形式,一個節點A總可以讀到自己更新的資料


      • 會話一致性(Session consistency)

      訪問儲存系統同一個有效的會話,系統應保證該程式讀己之所寫


      • 單調讀一致性(Monotonic read consistency)


      一個節點從系統中讀取一個特定值之後,那麼該節點從系統中不會讀取到該值以前的任何值


      一個系統要能夠保證來自同一個節點的寫操作被順序執行(保證寫操作序列化)




        推薦閱讀:

        https://blog.csdn.net/jarniyy/article/details/93710088

        來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69949806/viewspace-2901779/,如需轉載,請註明出處,否則將追究法律責任。

        相關文章