從測試角度看數據庫架構

主要內容包括:

1.數據庫性能測試的目的及範圍     2.數據庫的常用架構

3.數據庫主從同步的工作原理         4.數據庫分庫分表的設計方法

數據庫性能測試的目的

             發現數據庫相關的性能瓶頸

             sql語句-慢查詢

             資源使用率

             數據庫架構的合理性

             數據庫的性能指標

數據庫常用架構

            一主多從

 最長說的讀寫分離 master主要負責數據的寫入和更新和刪除(但是刪除很少,一般都有一個字段用於標記刪除),通過主從從複製,將數據同步到從庫上,從庫的任務就是讀。

優點:讀寫分離,分擔了單臺服務器的壓力情況,所有的讀操作都在不同的服務器上,主服務器承擔了數據寫入和更新操作。

缺點:主從延遲,當主服務器上寫入數據的時,如果發生網絡延遲10s,那麼這十秒在從庫上是沒有主庫上寫入數據的,此時發            生讀的時,就讀取不到數據。master掛了,就只能進行瀏覽不能插入,修改。

雙機熱備

 VIP指的是虛擬Ip,跟之前的都在同一數據庫上,然後會把數據複製到slave上。

優點:彌補了延遲問題,master掛掉之後,VIP會立刻將從數據同步到主數據。並變成master,對前面無感覺。

缺點:1.靠硬件上抗,讀取慢  2.master掛掉又恢復之後,slave並不會將期間的數據自動同步到master上去。

 

主從同步原理

           master將改變記錄到二進制日誌(binary log)中

           slave將master的binary log events拷貝到它的中繼日誌relay log中

           slave重做中繼日誌中農的時間,將改變反應它自己的數據。

數據庫的分庫分表設計方法

                 原因:1.單表或單庫數據量太大

                            2.硬件不能升級或無法升級

分庫分表方案:

                       1.業務拆分   用戶、訂單、商品放到不同的數據庫上

                       2.垂直拆分  商品表來說,可以按照商品按照商品類型進行拆分

                       3.水平拆分-一致性哈希算法(取模多少,主鍵自增的情況)  對三個表進行查分

 

 

 

 

 

        

 

 

       

              

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章