<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                [TOC] ## 一致性與共識 分布式系統最重要的抽象之一就是**共識(consensus)**:**就是讓所有的節點對某件事達成一致** ## 一致性保證 ? 大多數復制的數據庫至少提供了**最終一致性**,這意味著如果你停止向數據庫寫入數據并等待一段不確定的時間,那么最終所有的讀取請求都會返回相同的值。換句話說,不一致性是暫時的,最終會自行解決(假設網絡中的任何故障最終都會被修復)。最終一致性的一個更好的名字可能是**收斂(convergence)**,因為我們預計所有的復本最終會收斂到相同的值 **分布式一致性模型**和我們之前討論的事務隔離級別的層次結構有一些相似之處。盡管兩者有一部分內容重疊,但它們大多是無關的問題:事務隔離主要是為了,**避免由于同時執行事務而導致的競爭狀態**,而分布式一致性主要關于,**面對延遲和故障時,如何協調副本間的狀態。** ## 線性一致性 是讓一個系統看起來好像只有一個數據副本,而且所有的操作都是原子性的。有了這個保證,即使實際中可能有多個副本,應用也不需要擔心它們 ## 依賴線性一致性 1. 鎖定和領導選舉 2. 約束和唯一性保證 3. 跨信道的時序依賴 ## 實現線性一致的系統 1. 單主復制(可能線性一致) 2. 共識算法(線性一致) 3. 多主復制(非線性一致) 4. 無主復制(也許不是線性一致的) ## CAP定理 * 如果應用需要線性一致性,且某些副本因為網絡問題與其他副本斷開連接,那么這些副本掉線時不能處理請求。請求必須等到網絡問題解決,或直接返回錯誤。(無論哪種方式,服務都**不可用(unavailable)**)。 * 如果應用不需要線性一致性,那么某個副本即使與其他副本斷開連接,也可以獨立處理請求(例如多主復制)。在這種情況下,應用可以在網絡問題前保持可用,但其行為不是線性一致的
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看