效能測試瓶頸分析(1)
所謂效能瓶頸是限制系統性能的關鍵因素
1、硬體上的效能瓶頸
包括:CPU、記憶體(RAM)、磁碟I/O
例如:在需求分析和概要設計師。確定資料庫伺服器需要6個CPU、12G記憶體,但是測試時,發現CPU的持續利用率在95%以上,這時可認為在硬體上出現效能瓶頸
2.應用軟體的效能瓶頸
包括:web伺服器、應用伺服器、資料庫系統等
例如:在配置JDBC連線池的引數時,最大連線數為50,最小連線數為5,增加量為10,。但是在進行負載測試時,現有的連線數不足,系統會動態生成10個新的連線數,這樣導致了交易處理的響應時間大大的增加。則應用軟體上出現了效能瓶頸
3.應用程式的效能瓶頸
包括:開發人員程式架構設計規劃不合理、設計有問題(序列、並行處理)
開發人員新開發的應用程式,例如,用Java或者C開發出來的的部署在應用伺服器上用於使用者交易請求處理的應用程式,當程式處理使用者傳送的請求時,只能進行序列處理,無法並行處理,導致響應時間非常長,這時可以認為應用程式出現了效能瓶頸
同步、非同步:
指的是能否開啟新的執行緒。同步不能開啟新的執行緒,非同步可以。
指的是任務的執行方式。序列是指多個任務時,各個任務按順序執行,完成一個之後才能進行下一個。並行指的是多個任務可以同時執行。非同步是多個任務並行的前提條件。
4.作業系統的效能瓶頸
Windows、Linux、Unix自身系統
例如:在Windows中,虛擬記憶體設定不合理。,都指定為C驅提供虛擬記憶體,在測試時發現物理記憶體不足時,虛擬記憶體的交換效果非常不理想,導致交易的響應時間大大增加,這時認為在作業系統上出現了效能瓶頸
5.網路裝置的效能瓶頸
防火牆、動態複雜均衡器、交換機裝置
一般指的是防火牆、動態負載均衡器、交換機等裝置。例如,在動態負載均衡器上設定了動態分發負載的機制,當發現某個應用伺服器上的硬體資源已經到達極限時,動態負載均衡器將後續的交易請求傳送到其它負載較輕的應用伺服器上。在測試時發現,動態負載均衡機制沒有起到相應的作用,這時可以認為在網路裝置上出現了效能瓶頸
6.如何去定位
檢視系統日誌
利用效能監控工具
附圖:
以上選自
http://blog.sina.com.cn/s/blog_4ab06e970100937i.html