1. 程式人生 > 其它 >資料庫的效能測試包含哪些方面的測試?

資料庫的效能測試包含哪些方面的測試?

如何做資料庫的效能測試,資料庫相關的效能測試包含兩個方面的測試,涉及業務的效能測試和只是針對資料庫的效能測試,從以下九點我們詳細闡述一下。



1.監控,在測試之前需要配置好監控,包含各種資料庫效能指標以及機器資源使用率的監控,最好監控工具能提供圖形化的介面顯示各種指標曲線。如果只是資料的監控沒有曲線,沒有辦法看到過程中的每個點的情況,很多情況下會有曲線的波動,在測試完成後需要分析這種波動產生的原因。

2.資料庫的初始化,在測試之前需要準備測試資料,包含業務的測試需要製作業務的測試資料,純資料庫相關的測試可以自己生成測試資料。只有在一定量的測試資料環境下執行語句才能測試資料庫的效能及機器的配置是否能支撐這種量級的操作。

3.預熱,在測試之前需要將部分資料載入到記憶體中,如果沒有預熱,在測試的時候載入資料,這種情況與線上的情況不同,對測試結果又影響。

4.多次測試,在多次測試的時候,需要確保測試資料的量級差別不太大。

5.在做效能測試的時候,我們的目的是測試資料庫的表現,不是測試資料庫究竟能承受多大的壓力,所以我們的測試機器配置一定要足夠,不要出現因為機器資源導致的限制。

6.工具的選擇,包含業務的測試測試工具對於傳統領域的測試來說一般使用loadrunner和PerformanceRunner,對於網際網路的應用一般的非自研的使用jmeter即可滿足。

7.測試結果的分析,對於測試結果的分析一般要包含機器資源使用的分析,資料庫監控指標的分析,慢sql的分析,資料庫錯誤日誌的檢視。同時結合壓測工具或自己配置的工具生成的結果去分析,是否有慢sql,是否有資源使用波動,結果的tps,qps是否滿足預期等。

8.在分析完結果後,需要對發現的問題進行調整,優化,但是最好每次調整一個方面的配置,調整後再次測試,記錄結果並對比檢視效果。涉及業務的測試在分析的時候需要配合研發同學分析定位問題。

9.場景的設計,在單獨的資料庫效能測試中,必須包含的幾個場景有隻讀,讀寫混合,只寫,這3個場景分別包含下面2個場景。資料量比較小,能在buffer中全部放下的情況,資料量比較大,不能完全在buffer中放下。