1. 程式人生 > 其它 >Mysql效能調優二——基準測試

Mysql效能調優二——基準測試

1.為什麼需要基準測試

   基準測試是唯一方便有效的可以學習系統在給定的負載下會發生什麼的方法。即基準測試可以在系統實際負載外創造一些虛構場景進行測試。在進行實際上線前,一定要使用基準測試。當然,基準測試也只能是大致評估。

2.基準測試的策略

  一般有兩種:整合式(測試整個系統)和單元件式(單獨測試Mysql)。通常來說,應該關注專案的整體測試,但在以下場景並且在專案初期,可以單獨測試Mysql:

  a.需要比較不同的schema或查詢的效能。

  b.針對應用中某個具體問題的測試。

  c.為了避免漫長的基準測試,可以通過一個短期的基準測試,做快速的“週期迴圈”,來檢測出某些調整後的效果。

  通常來說,我們很難在真實環境下進行基準測試,所以應該通過大量的模擬資料和壓力來進行基準測試。

3.基準測試的指標

  吞吐量:檔位時間內事務的處理數。單位為每秒事務數(TPS)和每分鐘事務數(TPM)。

  響應時間或延遲:測試任務整體所需時間。通常採用百分比響應時間來替代最大響應時間。

  併發性:任意時間內有多少同時發生的併發請求,而不是有多少個會話。

  可擴充套件性:即線性擴充套件性,當工作量增加一倍時,吞吐量增加一倍,資源增加一倍時,吞吐量增加一倍,這就是線性可擴充套件性。大多數系統都沒辦法達到線性可擴充套件性。

4.基準測試方法

  有許多錯誤的基準測試方法,避免了以下錯誤,才能進行測試質量的改進