在實際測試中,由於各種原因,測試得到的效能指標關係往往並不遵循前面介紹的關係。常見的現象有cpu壓不滿或者在cpu壓滿前,相關效能指標曲線已不正常。雖然導致這種現象的原因很多,但有一點可以肯定的是,系統(硬體或軟體系統)的某處一定出現了瓶頸。此時,測試人員應配合開發人員進行分析盡快找出瓶頸的所在。
1、檢視cpu是否是瓶頸
首先檢視cpu%是否已接近100%,若已經接近(>95%),再看其他指標的拐點出現的時刻是否與cpu壓滿的時刻基本一致,若一致,則說明測試不存在瓶頸。若cpu未能壓滿,在繼續查詢其他瓶頸。
檢視cpu利用率。建議cpu指標如下:
a) user time:65%~70%
b) system time:30%~35%
c) idle:0%~5%
如果us,sy高於這個指標可以判斷cpu有瓶頸
2、檢視記憶體是否瓶頸
記憶體不足時,作業系統會使用虛擬記憶體,平凡進行頁交換,這回造成art(activity respond time)的上公升。
3、檢視磁碟i/o是否瓶頸
磁碟i/o成為瓶頸時,會出現磁碟i/o繁忙,導致交易執行時在i/o處等待。
如圖,當磁碟的busy%>20%時,說明磁碟的i/o已比較繁忙。
4、檢視中間是否瓶頸
空閒執行緒的影響
日誌級別的影響
jvm的影響
jdbc連線池大小的影響
檢視網路頻寬是否瓶頸
5、檢視資料庫是否瓶頸
聯機事務處理系統需要頻繁運算元據庫,因此,資料庫的設計、部署方式等會對系統的效能有較大影響。
造成資料庫瓶頸的因素比較多,常見的有:
資料庫操作頻繁,占用cpu較大
資料庫表未建索引,導致運算元據庫時間過長
資料庫操作的常用表在乙個表空間內,且在乙個磁碟上,導致磁碟讀寫頻繁
資料庫的連線池設定太小,導致資料庫連線出現排隊
6、分析程式內部實現機制是否瓶頸
程式內部的一些實現機制也可能會成為瓶頸,比如同步、非同步方式,監控機制等。
效能測試瓶頸分析
在效能測試過程中,瓶頸猶如功能測試的bug,瓶頸的分析猶如bug的定位。效能測試工程師好比醫生,看到病象,定位 效能瓶頸的定位更像庖丁解牛,層層解剖,最後定位問題之所在。下面分享乙個記憶體洩漏的瓶頸分析。病象 tps波動非常大 狂打超時日誌 偶爾有500錯誤。看到這個現象,其實說明不了什麼問題,就象...
效能測試瓶頸分析
在效能測試過程中,瓶頸猶如功能測試的bug,瓶頸的分析猶如bug的定位。效能測試工程師好比醫生,看到病象,定位 效能瓶頸的定位更像庖丁解牛,層層解剖,最後定位問題之所在。下面分享乙個記憶體洩漏的瓶頸分析。病象 tps波動非常大 狂打超時日誌 偶爾有500錯誤。看到這個現象,其實說明不了什麼問題,就象...
效能測試瓶頸分析
在效能測試過程中,瓶頸猶如功能測試的bug,瓶頸的分析猶如bug的定位。效能測試工程師好比醫生,看到病象,定位 效能瓶頸的定位更像庖丁解牛,層層解剖,最後定位問題之所在。下面分享乙個記憶體洩漏的瓶頸分析。病象 tps波動非常大 狂打超時日誌 偶爾有500錯誤。看到這個現象,其實說明不了什麼問題,就象...