Loadrunner 監控Windows資源(CPU、內存)的指標分析情況

原文鏈接:https://blog.csdn.net/kobe269/article/details/25330911

1、Memory:內存使用情況可能是系統性能中最重要的因素。如果系統“頁交換”頻繁,說明內存不足。“頁交換”是使用稱爲“頁面”的單位,將固定大小的代碼和數據塊從 RAM 移動到磁盤的過程,其目的是爲了釋放內存空間。儘管某些頁交換使 Windows 2000 能夠使用比實際更多的內存,也是可以接受的,但頻繁的頁交換將降低系統性能。**減少頁交換將顯著提高系統響應速度。**要監視內存不足的狀況,請從以下的對象計數器開始:

1)Available Mbytes:可用物理內存數. 如果Available Mbytes的值很小(4 MB 或更小),則說明計算機上總的內存可能不足,或某程序沒有釋放內存。

2)page/sec: 表明由於硬件頁面錯誤而從磁盤取出的頁面數,或由於頁面錯誤而寫入磁盤以釋放工作集空間的頁面數。一般如果pages/sec持續高於幾百,那麼您應該進一步研究頁交換活動。有可能需要增加內存,以減少換頁的需求(你可以把這個數字乘以4k就得到由此引起的硬盤數據流量)。Pages/sec 的值很大不一定表明內存有問題,而可能是運行使用內存映射文件的程序所致。

3)page read/sec:頁的硬故障,page/sec的子集,爲了解析對內存的引用,必須讀取頁文件的次數。閾值爲>5. 越低越好。大數值表示磁盤讀而不是緩存讀。
由於過多的頁交換要使用大量的硬盤空間,因此,有可能將導致將頁交換內存不足與導致頁交換的磁盤瓶徑混淆。因此,在研究內存不足不太明顯的頁交換的原因時,您必須跟蹤如下的磁盤使用情況計數器和內存計數器:
Physical Disk\ % Disk Time
Physical Disk\ Avg.Disk Queue Length
例如,包括 Page Reads/sec 和 % Disk Time 及 Avg.Disk Queue Length。如果頁面讀取操作速率很低,同時 % Disk Time 和 Avg.Disk Queue Length的值很高,則可能有磁盤瓶徑。但是,如果隊列長度增加的同時頁面讀取速率並未降低,則內存不足。
要確定過多的頁交換對磁盤活動的影響,請將 Physical Disk\ Avg.Disk sec/Transfer 和 Memory\ Pages/sec 計數器的值增大數倍。如果這些計數器的計數結果超過了 0.1,那麼頁交換將花費百分之十以上的磁盤訪問時間。如果長時間發生這種情況,那麼您可能需要更多的內存。

4)Page Faults/sec:每秒軟性頁面失效的數目(包括有些可以直接在內存中滿足而有些需要從硬盤讀取)較page/sec只表明數據不能在內存的指定工作集中立即使用。
Cache Bytes:文件系統緩存(File System Cache),默認情況下爲50%的可用物理內存。如IIS5.0 運行內存不夠時,它會自動整理緩存。需要關注該計數器的趨勢變化
如果懷疑有內存泄露,請監視 Memory\ Available Bytes 和 Memory\ Committed Bytes,以觀察內存行爲,並監視認爲可能在泄露內存的進程的 Process\Private Bytes、Process\Working Set 和Process\Handle Count。如果懷疑是內核模式進程導致了泄露,則還應該監視 Memory\Pool Nonpaged Bytes、Memory\ Pool Nonpaged Allocs 和 Process(process_name)\Pool Nonpaged Bytes。

5)Pages per second :每秒鐘檢索的頁數。該數字應少於每秒一頁。

2、Process:
1)%Processor Time: 被處理器消耗的處理器時間數量。如果服務器專用於sql server,可接受的最大上限是80-85%
2)Page Faults/sec:將進程產生的頁故障與系統產生的相比較,以判斷這個進程對系統頁故障產生的影響。
3) Work set: 處理線程最近使用的內存頁,反映了每一個進程使用的內存頁的數量。如果服務器有足夠的空閒內存,頁就會被留在工作集中,當自由內存少於一個特定的閾值時,頁就會被清除出工作集。
4)Inetinforivate Bytes:此進程所分配的無法與其它進程共享的當前字節數量。如果系統性能隨着時間而降低,則此計數器可以是內存泄漏的最佳指示器。

3、Processor:監視“處理器”和“系統”對象計數器可以提供關於處理器使用的有價值的信息,幫助您決定是否存在瓶頸。
1)%Processor Time:如果該值持續超過95%,表明瓶頸是CPU。可以考慮增加一個處理器或換一個更快的處理器。
2) %User Time:表示耗費CPU的數據庫操作,如排序,執行aggregate functions等。如果該值很高,可考慮增加索引,儘量使用簡單的表聯接,水平分割大表格等方法來降低該值。
3)%Privileged Time:(CPU內核時間)是在特權模式下處理線程執行代碼所花時間的百分比。**如果該參數值和"physical Disk"參數值一直很高,表明I/O有問題。可考慮更換更快的硬盤系統。**另外設置Tempdbin RAM,減低"max async IO","max lazy writer IO"等措施都會降低該值。
此外,跟蹤計算機的服務器工作隊列當前長度的 Server Work Queues\ Queue Length 計數器會顯示出處理器瓶頸。隊列長度持續大於 4 則表示可能出現處理器擁塞。此計數器是特定時間的值,而不是一段時間的平均值。
4)% DPC Time:越低越好。在多處理器系統中,如果這個值大於50%並且Processor:% Processor Time非常高,加入一個網卡可能會提高性能,提供的網絡已經不飽和

4、Thread
ContextSwitches/sec: (實例化inetinfo 和dllhost 進程) 如果你決定要增加線程字節池的大小,你應該監視這三個計數器(包括上面的一個)。增加線程數可能會增加上下文切換次數,這樣性能不會上升反而會下降。如果十個實例的上下文切換值非常高,就應該減小線程字節池的大小。

5、Physical Disk:
1)%Disk Time %:指所選磁盤驅動器忙於爲讀或寫入請求提供服務所用的時間的百分比。**如果三個計數器都比較大,那麼硬盤不是瓶頸。如果只有%Disk Time比較大,另外兩個都比較適中,硬盤可能會是瓶頸。**在記錄該計數器之前,請在Windows 2000 的命令行窗口中運行diskperf -yD。若數值持續超過80%,則可能是內存泄漏
2)Avg.Disk Queue Length:指讀取和寫入請求(爲所選磁盤在實例間隔中列隊的)的平均數。該值應不超過磁盤數的1.5~2 倍。要提高性能,可增加磁盤。注意:一個Raid Disk實際有多個磁盤。

3)Average Disk Read/Write Queue Length:指讀取(寫入)請求(列隊)的平均數。
4)Disk Reads(Writes)/s: 物理磁盤上每秒鐘磁盤讀、寫的次數。兩者相加,應小於磁盤設備最大容量。
5)Average Disksec/Read: 指以秒計算的在此盤上讀取數據的所需平均時間。
6)Average Disk sec/Transfer:指以秒計算的在此盤上寫入數據的所需平均時間。

6、Network Interface:
1)Bytes Total/sec :爲發送和接收字節的速率,包括幀字符在內。判斷網絡連接速度是否是瓶頸,可以用該計數器的值和目前網絡的帶寬比較

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