<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] ## 分片 ### 范圍:range 優點:簡單,容易擴展 缺點:各庫壓力不均(新號段更活躍) ### 哈希:hash 優點:簡單,數據均衡,負載均勻 缺點:遷移麻煩(2庫擴3庫數據要遷移) ### 路由服務:router-config-server 優點:靈活性強,業務與路由算法解耦 缺點:每次訪問數據庫前多一次查詢 > 大部分互聯網公司采用的方案二:哈希分庫,哈希路由 ### 分組 **分組解決“可用性”問題**,分組通常通過主從復制的方式實現 > 互聯網公司數據庫實際軟件架構是:又分片,又分組 ## 數據庫架構設計思路 兩主,兩從,一主當備份,防止數據沖突 ### 擴展讀性能 1. 第一種方式 : 建立索引 不同的庫可以建立不同的索引 **寫庫** 不建立索引; **線上讀庫** 建立線上訪問索引,例如uid; **線下讀庫** 建立線下訪問索引,例如time; 2. 第二種方式 : 增加從庫 1. 從庫越多,同步越慢 2. 同步越慢,數據不一致窗口越大(不一致后面說,還是先說讀性能的提高) 3. 第三種方式 : 增加緩存 ## 保證一致性 ### 方式一 1. 讀cache,如果cache hit則返回 2. 如果cache miss,則讀從庫 3. 讀從庫后,將數據放回cache > 在一些異常時序情況下,有可能從【從庫讀到舊數據(同步還沒有完成),舊數據入cache后】,**數據會長期不一致** ## 方式二:"緩存雙淘汰"(推薦): 為解決第一個問題 1. 淘汰cache 2. 寫數據庫 3. 在經驗“主從同步延時窗口時間”后,再次發起一個異步淘汰cache的請求 這樣,即使有臟數據如cache,一個小的時間窗口之后,臟數據還是會被淘汰。帶來的代價是,多引入一次讀miss(成本可以忽略)
                  <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>

                              哎呀哎呀视频在线观看