性能測試之操作系統計數器分析方法

 

內存分析方法:

內存分析用於判斷系統有無遇到內存瓶頸,是否需要通過增加內存等手段提高系統性能表現。內存分析需要使用計數器:Memory & Physical Disk類別的計數器,以下是內存分析的主要方法和步驟

1>.查看Memory\Available Mbytes指標,該計數器是描述系統可用內存的直接指標,在對系統進行操作系統級別的內存分析時,首先通過該指標建立一個初步的印象,瞭解性能測試過程中系統是否仍然有足夠的內存可用,如果該指標的數據比較小,系統可能出現了內存方面的問題,這時需要繼續依據以下步驟進行進一步的分析

2>.注意Pages/sec、Pages Read/sec 和 Page Faults/sec的值。操作系統經常會利用磁盤交換的方式提高系統可用的內存量或內存的使用效率。Windows和Unix操作系統都提供了類似的方法來支持磁盤交換計數,而這三個指標直接反應了操作系統進行磁盤交換的頻度

Pages/sec的計數持續高於幾百?很可能會有內存方面的問題產生,但Pages/sec的值很大不一定表明內存有問題,而可能是運行使用內存映射文件的程序所致

Page Faults/sec值表示每秒發生頁面失效的次數,頁面失效次數越多,說明操作系統向內存中讀取的次數越多,此時還需要查看Pages Read/sec的計數值,該閥值爲5,如果超過5,則可判斷存在內存方面的問題。

3>.根據Physical Disk計數器的值分析性能瓶頸,對Physical Disk計數器的分析包括對Page Reads/sec 和%DiskTime 及Average Disk Queue Length的分析。如果Pages Read/sec很低,同時%Disk Time 和Average Disk Queue Length的值很高,則可能有磁盤瓶頸。但是,如果隊列長度增加的同時Pages Read/sec並未降低,則是由於內存不足。

 

處理器分析方法

1>.查看System\%Total Processor Time性能計數器的計數值。該計數值用於體現服務器整體的處理器利用率,對多處理器系統而言,該計數值體現的是所有CPU的平均利用率。如果該值的數值持續超過90%,則可以說明整個系統面臨處理器方面的瓶頸,需要通過增加處理器來提高性能

2>.查看每個CPU的Processer\%Processor Time和Processor\%User Time 和 Processor\%Privileged Time

Processor\%User Time 是指系統的非核心操作消耗的CPU的時間,如果該值較大,可以考慮是否能通過算法優化等方法降低該值。如果服務器是數據庫,Processor\%User Time 值大的原因很可能是數據庫的排序或是函數操作消耗了過多的CPU時間,此時可以考慮對數據庫系統進行優化。

3>.研究系統處理器瓶頸,查看System\Processor Queue Length計數器的值,當該計數器的值大於CPU數量的總數1時,說明產生了處理器阻塞。在處理器的%Process Time值很高時一般都伴隨着處理器阻塞,但產生處理器阻塞時,Processor\%Process Time計數器的值並不一定很大,此時就是必須查看處理阻塞的原因。

%DPC Time是另一個需要關注的內容,該計數值越低越好。在多處理器系統中,如果該值大於50%並且Processor\%Processor Time值非常高,則考慮加入一個網卡來提高性能。

 

磁盤I/O分析方法

1>.計算每磁盤的I/O數。每磁盤的I/O數可用來與磁盤的I/O能力進行對比,如果經過計算得到的每磁盤I/O數超過了磁盤標稱的I/O能力,則說明確實存在磁盤的性能瓶頸。

2>.與Processor\Privileged Time合併進行分析。如果在Physical Disk計數器中,只有%Disk Time值較大,其他值都比較適中,則硬盤可能會是瓶頸。若幾個值都比較大,且數值持續超過80%,則可能是內存泄露。

3>.根據Disk sec/Transfer進行分析。一般來說,定義Transfer數值小於15毫秒爲優秀,介於15~30毫秒之間爲良好,30~60毫秒之間爲可接受,超過60毫秒則需要考慮更換硬盤貨硬盤的RAID方式

 

 

進程分析方法

1>.查看進程的%Processor Time值,每個進程%Processor Time值反映出進程所消耗的處理時間。將不同進程所消耗的處理器時間進行對比,可以容易地看出具體哪個進程在性能測試過程中消耗了最多的處理器時間,從而可以據此針對應用進行優化

2>.查看每個進程產生的頁面失效

3>.瞭解進程的Process\Private Bytes

 

 

網絡分析方法

 Network Interface\Bytes Total/sec爲發送和接收字節的速率,可以通過該計數器的值判斷網絡連接速度是否是瓶頸,具體操作方式是用該計數器的值和目前網絡的帶寬進行比較。

 

 

 

 

 

 

 

 

參考資料《軟件性能測試過程詳解與案例剖析》

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章