標籤:
Mysql 基準測試
基準測試是針對系統設計的一種壓力測試。
一、基準測試的主要工作:
1.驗證基於系統的一些假設,確認這些假設是否符合實際情況(我們在測試中主要做的也還,只是一些功能測試)。
2.重現系統中的某些異常行為,以解決這些異常。(如:web中 使用者登陸經常失敗,501,502的錯誤。)
3.測試當前系統的運行情況。(系統穩定性,bug fix ,什麼的)。
4.類比比當前系統更高的負載。
5.規劃未來的業務增長。
6.測試應用適應可變環境的能力。
7.測試不同硬體,軟體,系統之間的配置。
8.證明新採購的裝置是否配置正確。
二、基準測試的策略
1.針對整體系統的測試
(1)測試整個應用系統,包括Web 服務器、應用代碼、網路和資料庫是非常有用的,因為用記關注的並不僅僅是Mysql本身的效能,而是應用整體的效能。
2.只測試單個組件,Mysql
(1) 需要比較不同的schema 或查詢的效能
(2)針對應用中某個具體問題的測試
(3)為了避免漫長的基準測試,可以通過一個短期的基準測試,做快速的“周期迴圈”來檢測出某些調整後的效果。
三、測試單位
1.輸送量 2.回應時間,延遲(在web 應用中 如果請求到響應,超1S就要找問題了。)
3.並發(這個在開發中真的做的很少,要改改了。)
4.可擴充性(基本是沒有,考慮介面,設計,這些東西了,在開發組件應用時,要注意的。)
四、基準測試方法
1.使用真實資料的子集
2.使用錯誤資料分布
3.在多使用者情境中,只做單使用者的測試
4.在單伺服器上測試分布式應用
5.與真實行為不匹配
6.反覆執行一個查詢(mysql 資料緩衝)
7.沒有檢查錯誤(如一個本應該很慢的sql 變的很快,可能是有bug的)
8.忽略系統預熱(如硬碟,在剛開始讀取速度很快,過上一段時間,就會降下來)
9.使用預設配置
10.測試時間太短
只有避免了上述的錯誤,才能走上改進品質的漫漫長路。
讀《高效能mysql》記錄
mysql基準測試 ,java測試