高效能mysql學習 2 基準測試

2021-10-24 23:38:51 字數 1545 閱讀 2415

~~~~

基準測試是針對系統設計的一種壓力測試,通常的目標是為了掌握系統的行為以及重現系統的某個狀態,或者是做新硬體的可靠性測試。常用工具sysbench。

基準測試的主要用途:

驗證一些基於系統的假設是否符合實際情況

重現系統中的某些異常行為

測試系統當前的運**況

模擬更高的系統負載

評估專案需要的硬體和網路等資源需求

測試應用適應可變環境的能力

測試不同的硬體、軟體和西哦他嗯的配置

驗證當前裝置是否配置成功

建立單元測試套件

~~~~

基準測試有兩種策略:

針對整個系統的整體測試(整合式、全棧式)

單獨測試(單元件式)

選擇整個系統測試:

測試整體效能,不需要單獨考慮mysql的效能,關心的是整個應用。

mysql並不總是瓶頸

只有整體測試,才能看出沒部分的快取行為

整體測試能直觀的看出整體的效能,這是單獨測試無法做到的

但是在最初階段,我們並不可能,也不需要整體測試,只需要單獨測試mysql,比如以下情況:

比較不同的schenma或查詢的效能

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

為了避免長期的基準測試,用乙個短期的基準測試,來檢測出某些調整後的效果

測試的指標

吞吐量

響應時間或者延時

併發量可擴充套件性

我們實現的基準測試最好包括一下特質

可重複性:可以重複執行的測試

可觀測性:通過全方面的監控,及時了解和分析測試過程發生了什麼

可展示性:相關人員可以直觀明了的了解測試結果

真實性:測試結構反映了真實情況

可執行性:可以快速驗證和分析問題

我們在實際過程中應該注意避免的錯誤

使用真實資料的子集而不是全集

使用錯誤的資料分布(隨機資料通常無法模擬真實資料分布)

使用不真實的資料分布

在多使用者場景中只做單使用者測試

在單伺服器上測試分布式

與真實使用者行為不匹配

反覆執行同乙個查詢

沒有錯誤檢測

忽略系統預熱的過程(系統啟動後,馬上開始測試)

使用預設的伺服器配置

測試時間過短

測試時長的選擇:基準測試需要執行足夠長的時間,這一點很重要,如果無法確定時間,盡量執行到系統穩定,同時注意系統嗯預熱,一般io讀寫在一段(比如三到四個小時,這個和硬體和網路資源有關)趨於穩定,但是寫io更長的時間內變化很大。乙個簡單的測試規劃,就是等系統看起來至少穩定的時間等於系統預熱的時間

高效能MySQL 2 MySQL基準測試

三 基準測試方法 四 基準測試工具 基準測試可以觀察系統在不同壓力下的行為,評估系統的容量,掌握哪些是重要的變化,或者觀察系統如何處理不同的資料。驗證基於系統的假設,確認假設符合實際情況 需要避免的一登常見錯誤 1.應該建立將引數和結果文件化的規範,每一輪測試都必須進行詳細記錄 2.基準測試應該執行...

MYSQL之高效能的mysql(二) 基準測試

如果不清楚系統當前的效能,就無法確認某些優化的效果如何。也可以利用歷史的基準測試結果來分析診斷一些無法 的問題。基準測試可以評估在專案未來的負載下,需要什麼樣的硬體,需要多大容量的網路,以及其他相關資源。這有助於降低系統公升級和重大變更的風險。例如,通過基準測試,可以發現系統在隨機的併發峰值下的效能...

高效能計算基準測試程式(二) MPI測試基準

測試集 參考官方介紹,一般測試過程中使用imb測試mpi傳輸的各項效能並結合osu測試mpi頻寬及延時。osu bibw bidirectional bandwidth test osu bw bandwidth test osu latency latency test osu put laten...