windows性能监视器常用计数器
最近研究性能測試工具中發(fā)現(xiàn)這些所謂的性能測試工具的數(shù)據(jù)、全部來至windows操作系統(tǒng)提供的數(shù)據(jù)、然后通過API提供給性能測試工具、性能測試工具在用一種比較直觀的圖形展示出來。也就是說不部分情況下如果把你沒有弄明白性能監(jiān)視器中數(shù)據(jù)得意義,那么性能測試工具的那些圖表對你的意義也就沒有多大的用處。下面我整理了一部分windows中性能監(jiān)視器中比較常用的性能計(jì)數(shù)器。
這里整理的比較多的內(nèi)容:處理器對象、系統(tǒng)對象、邏輯磁盤對象、物理磁盤對象、內(nèi)存。這些性能計(jì)數(shù)器我們經(jīng)常在使用的過程中都會(huì)用得到,所以這篇文章大部分內(nèi)容是這些的。
- 1. 處理器對象(Processor Object)
一條經(jīng)驗(yàn)規(guī)則是不要使你所監(jiān)控的每個(gè)處理器的C P U使用率高于9 0%。峰值超過9 0%是可以接受的,但平均使用率超過9 0%則是應(yīng)該避免的。
? 處理器時(shí)間百分比(%Processor Time) 處理器執(zhí)行一個(gè)非空閑線程的時(shí)間百分比。用%1 0 0減去處理器空閑的總時(shí)間得出這個(gè)值。這是整個(gè)系統(tǒng)的C P U使用的一個(gè)好的指示器。
? 特權(quán)時(shí)間百分比(%Privileged Time) 處理器用于在特權(quán)模式下(即,執(zhí)行操作系統(tǒng)功能和運(yùn)行驅(qū)動(dòng)器,如I / O )工作時(shí)間的百分比。這個(gè)時(shí)間包括C P U (或C P U )用于維護(hù)中斷和延遲過程調(diào)用( D P C )的時(shí)間。
? 用戶時(shí)間百分比(%User Time) 處理器用于在用戶模式工作的時(shí)間百分比。這種類型的工作是由應(yīng)用產(chǎn)生的。通常,希望極大化用戶時(shí)間百分比的值,極小化特權(quán)時(shí)間百分比的值。
? 中斷時(shí)間百分比(%Interrupt Time) CPU忙于維護(hù)硬件中斷的時(shí)間百分比。系統(tǒng)中的許多硬件部件,如鼠標(biāo)、網(wǎng)絡(luò)接口卡或磁盤控制器,都可以發(fā)出處理器中斷。你可以將中斷看作為Windows NT正常操作的一部分發(fā)生。
? 中斷數(shù)/秒(Interrupts/sec) 處理器每秒接收并處理的硬件中斷的數(shù)量。它不包括系統(tǒng)
D P C,系統(tǒng)D P C單獨(dú)計(jì)數(shù)。
- 2. 系統(tǒng)對象(System Object)
系統(tǒng)對象與它的相關(guān)計(jì)數(shù)器衡量處理器上運(yùn)行的線程的總計(jì)數(shù)據(jù)。雖然使用這些計(jì)數(shù)器不能觀察一個(gè)特定處理器的工作負(fù)載或一個(gè)特定線程的行為,但它們提供了有關(guān)整個(gè)系統(tǒng)性能有價(jià)值的內(nèi)部信息。系統(tǒng)計(jì)數(shù)器如下所示:
? 處理器隊(duì)列長度(Processor Queue Length) 處理器隊(duì)列中的線程的數(shù)量。換句話說,它
是等待運(yùn)行的線程數(shù)。即使你的系統(tǒng)具有多個(gè)處理器,但只有一個(gè)隊(duì)列用于處理器時(shí)間。計(jì)數(shù)器只記錄那些準(zhǔn)備執(zhí)行但仍處于等待的線程,不是那些正在運(yùn)行的線程。
? 環(huán)境切換/秒(Context Switches/sec) 系統(tǒng)上的所有處理器從一個(gè)線程切換到另一個(gè)線程的組合比率。當(dāng)一個(gè)正在運(yùn)行的線程自動(dòng)地放棄處理器,處理器由一個(gè)高優(yōu)先級(jí)的待命線程搶占時(shí)發(fā)生環(huán)境切換,或在用戶模式和特權(quán)(核心)模式之間切換,以使用一個(gè)執(zhí)行或子系統(tǒng)的服務(wù)。這是線程的總和:計(jì)算機(jī)上運(yùn)行在所有處理器上的所有線程的環(huán)境切換數(shù)/秒。
- 3. SQL Server:緩沖區(qū)管理器對象( B u ffer Manager Object)
緩沖區(qū)管理器計(jì)數(shù)器提供了SQL Server使用的內(nèi)存緩沖區(qū)的有關(guān)信息。這些計(jì)數(shù)器如下所示:
? 高速緩存命中率( B u ffer Cache Hit Ratio) 引用當(dāng)前位于高速緩存中頁的需求的百分率。預(yù)先在內(nèi)存中擁有頁,允許SQL Server避免請求從磁盤子系統(tǒng)執(zhí)行一次物理I / O。因?yàn)樵L問內(nèi)存相對于訪問物理I / O,代價(jià)更小,一個(gè)高的緩沖區(qū)高速緩存命中率增強(qiáng)了系統(tǒng)的性能與吞吐量。如果你的系統(tǒng)很好地調(diào)整過,這個(gè)命中率應(yīng)該是8 0%或更高。如果具有一個(gè)低的緩沖區(qū)高速緩存命中率,你應(yīng)該為SQL Server分配更多的內(nèi)存。如果你已將現(xiàn)有的所有內(nèi)存都分配給了SQL Server,那么需要增加系統(tǒng)中物理內(nèi)存的數(shù)量。
? 高速緩存大小(頁)(Cache Size) 在SQL Server緩沖區(qū)高速緩存中的頁的數(shù)量。這個(gè)數(shù)量乘以8 K B,即可得到正在使用的以千字節(jié)為單位的緩存數(shù)。
? 空閑緩沖區(qū)(Free Buffer) 空閑SQL Server內(nèi)存緩沖區(qū)的數(shù)量。
? 讀的頁/秒(Page Reads/sec) 每秒請求的物理數(shù)據(jù)頁I / O的數(shù)量。
? 偷取的頁計(jì)數(shù)(Stolen Page Count) SQL Server用于緩沖區(qū)高速緩存的頁數(shù),這些內(nèi)存被給予系統(tǒng)中的另外一個(gè)進(jìn)程。Windows NT回收這個(gè)內(nèi)存以滿足其他系統(tǒng)部件的需要。
? 寫的頁/秒(Page Writes/sec) 由SQL Server執(zhí)行的每秒寫的物理數(shù)據(jù)頁的數(shù)量。
- 4. SQL Server:數(shù)據(jù)庫對象(Database Object)
數(shù)據(jù)庫對象計(jì)數(shù)器提供了有關(guān)SQL Server數(shù)據(jù)庫的信息,包括可用的空閑日志空間量和數(shù)據(jù)庫中活動(dòng)事務(wù)的數(shù)量。對于系統(tǒng)中的每個(gè)數(shù)據(jù)庫的每個(gè)計(jì)數(shù)器有一個(gè)實(shí)例。這些計(jì)數(shù)器包括如下:
? 日志刷新等待/秒(Log Flush Wait/sec) 在能夠繼續(xù)執(zhí)行前,必須等待日志刷新的數(shù)據(jù)庫提交數(shù)量。
? 日志使用的百分比(Percent Log Used) SQL Server實(shí)際使用的當(dāng)前定義的日志空間的百分比。
- 5. SQL Server:常規(guī)統(tǒng)計(jì)對象(General Statistics Object)
常規(guī)統(tǒng)計(jì)對象含有常規(guī)服務(wù)器范圍活動(dòng)的有關(guān)信息,它有一個(gè)計(jì)數(shù)器:
? 用戶連接數(shù)(User Connections) 系統(tǒng)中用戶連接的當(dāng)前數(shù)量。
- 6. SQL Server:閂對象(Latches Object)
這個(gè)對象計(jì)數(shù)器提供了在內(nèi)部SQL Server資源中有效的閂的信息。計(jì)數(shù)器如下:
? 平均閂等待時(shí)間(毫秒) ( Average Latch Wait Time) 閂請求在得到服務(wù)之前必須等待的平均時(shí)間,以毫秒為單位。
? 閂等待數(shù)/秒(Latch Waits/sec) 不能立即服務(wù),被迫等待其他資源釋放的閂請求的數(shù)量。
- 7. SQL Server:鎖對象(Locks Object)
鎖對象提供了由SQL Server提出的各個(gè)鎖請求的有關(guān)數(shù)據(jù),例如鎖生命周期和死鎖??梢栽谙到y(tǒng)上具有多個(gè)這些計(jì)數(shù)器的實(shí)例。計(jì)數(shù)器如下所示:
? 平均等待時(shí)間(毫秒) ( Average Wait Time) 每個(gè)鎖請求被迫等待的平均時(shí)間量,以毫秒為單位。
? 鎖到期數(shù)/秒(Lock Timeouts/sec) 在系統(tǒng)中過期的鎖請求的數(shù)量。
? 鎖等待數(shù)/秒(Lock Wa i t s / s e c )不能立即滿足,需要調(diào)用線程在給予鎖之前處于等待狀態(tài)的鎖請求的數(shù)量。
? 死鎖數(shù)/秒(Number of Deadlocks/sec) 導(dǎo)致產(chǎn)生死鎖的鎖請求的數(shù)量。
- 8. SQL Server:內(nèi)存管理器對象(Memory Manager Object)
內(nèi)存管理器對象含有有關(guān)SQL Server內(nèi)存使用的信息,包括SQL Server正在使用的高速緩
存內(nèi)存的數(shù)量。這個(gè)對象下的計(jì)數(shù)器如下所示:
? 內(nèi)存授權(quán)掛起(Memory Grants Pending) 等待授予工作空間內(nèi)存的進(jìn)程的當(dāng)前數(shù)量。
? S Q L高速緩存內(nèi)存(KB)(SQL Cache Memory) SQL Server用于動(dòng)態(tài)SQL 高速緩存的動(dòng)態(tài)
內(nèi)存數(shù)量。
? 目標(biāo)服務(wù)器內(nèi)存( K B ) ( Ta rget Server Memory) SQL Server將會(huì)消耗的動(dòng)態(tài)內(nèi)存的總額。
? 總的服務(wù)器內(nèi)存( K B ) ( Total Server Memory) SQL Server當(dāng)前消耗的動(dòng)態(tài)內(nèi)存的總額。
- 9. SQL Server:S Q L統(tǒng)計(jì)對象(SQL Statistics Object)
這個(gè)對象提供了系統(tǒng)上正在執(zhí)行的S Q L查詢的有關(guān)信息,包括查詢編譯和重新編譯的數(shù)量的數(shù)據(jù)。它有如下計(jì)數(shù)器:
? 批請求/秒(Batch Requests/sec) 服務(wù)器接收到的S Q L批請求的數(shù)量。
? SQL 編譯/秒(SQL Compilations/sec) SQL Server每秒執(zhí)行的S Q L語句編譯的數(shù)量。
? S Q L重新編譯/秒(SQL Re-Compilations/sec) SQL Server每秒執(zhí)行的S Q L語句重新編譯的數(shù)量。
- 10. 邏輯磁盤對象(Logical Disk Object)
邏輯磁盤對象提供了有關(guān)邏輯磁盤I / O性能的信息。邏輯磁盤計(jì)數(shù)器與Windows NT磁盤
系統(tǒng)管理員分配給邏輯磁盤驅(qū)動(dòng)器的字母相關(guān)。這個(gè)對象含有如下計(jì)數(shù)器:
? 磁盤讀時(shí)間百分比(%Disk Read Time) 選中的邏輯磁盤忙于服務(wù)讀請求總共用去時(shí)間的
百分比。
? 磁盤寫時(shí)間百分比(%Disk Write Time) 選中的邏輯磁盤忙于服務(wù)寫請求總共用去時(shí)間
的百分比。
? 磁盤時(shí)間百分比(%Disk Time) 選中的邏輯磁盤忙于服務(wù)讀請求或?qū)懻埱罂偣灿玫臅r(shí)間
的百分比,是磁盤寫時(shí)間百分比與磁盤讀時(shí)間百分比的和。
? 空閑時(shí)間百分比(%Idle Time) 邏輯磁盤在采樣時(shí)間間隔中處于空閑狀態(tài)的時(shí)間百分比。
? 平均磁盤隊(duì)列長度( Avg. Disk Queue Length) 在采樣的時(shí)間間隔中,選中的邏輯磁盤讀請求和寫請求排隊(duì)的平均數(shù)量。
? 平均磁盤讀隊(duì)列長度( Avg. Disk Read Queue Length) 在采樣的時(shí)間間隔中,對選中的邏輯磁盤讀請求排隊(duì)的平均數(shù)量。
? 平均磁盤寫隊(duì)列長度( Avg. Disk Write Queue Length) 在采樣的時(shí)間間隔中,對選中的邏輯磁盤寫請求排隊(duì)的平均數(shù)量。
? 平均磁盤秒數(shù)/讀( Avg. Disk sec/Read) 從邏輯磁盤讀數(shù)據(jù)的平均時(shí)間,以秒為單位。
? 平均磁盤秒數(shù)/寫( Avg. Disk sec/Write) 向邏輯磁盤寫數(shù)據(jù)的平均時(shí)間,以秒為單位。
? 平均磁盤秒數(shù)/傳輸( ( Avg. Disk sec/Transfer) 從邏輯磁盤進(jìn)行傳輸?shù)钠骄鶗r(shí)間,以秒為單位。
? 磁盤讀/秒(Disk Reads Bytes/sec) 邏輯磁盤上每秒讀字節(jié)。
? 磁盤讀/秒(Disk Writes Bytes/sec) 邏輯磁盤上每秒寫字節(jié)。
? 磁盤讀/秒(Disk Reads/sec) 邏輯磁盤上的讀操作比率。
? 磁盤寫/秒(Disk Writes/sec) 邏輯磁盤上的寫操作比率。
? 磁盤傳輸/秒(Disk Transfers/sec) 邏輯磁盤上的讀和寫操作的比率。
- 11. 物理磁盤對象(PhysicalDisk Object)
物理磁盤對象提供了有關(guān)物理磁盤I / O性能的信息。它的磁盤計(jì)數(shù)器與系統(tǒng)中的物理驅(qū)動(dòng)器有關(guān),并且只有當(dāng)運(yùn)行了D i s k P e r f服務(wù)時(shí),它才被激活。這個(gè)對象下的計(jì)數(shù)器如下所示:
? 磁盤讀時(shí)間百分比(%Disk Read Time) 選中的物理磁盤忙于服務(wù)讀請求總共用的時(shí)間的百分比。
? 磁盤寫時(shí)間百分比(%Disk Write Time) 選中的物理磁盤忙于服務(wù)寫請求總共用的時(shí)間的百分比。
? 磁盤時(shí)間百分比(%Disk Time) 選中的物理磁盤忙于服務(wù)讀請求或?qū)懻埱罂偣灿玫臅r(shí)間的百分比,是磁盤寫時(shí)間百分比與磁盤讀時(shí)間百分比的和。
? 空閑時(shí)間百分比(%Idle Time) 物理磁盤在采樣時(shí)間間隔中處于空閑狀態(tài)的時(shí)間百分比。
? 平均磁盤隊(duì)列長度( Avg. Disk Queue Length) 在采樣的時(shí)間間隔中,選中的物理磁盤讀請求和寫請求排隊(duì)的平均數(shù)量。
? 平均磁盤讀隊(duì)列長度( Avg. Disk Read Queue Length) 在采樣的時(shí)間間隔中,選中的物理磁盤讀請求排隊(duì)的平均數(shù)量。
? 平均磁盤寫隊(duì)列長度( Avg. Disk Write Queue Length) 在采樣的時(shí)間間隔中,選中的物理磁盤寫請求排隊(duì)的平均數(shù)量。
? 平均磁盤秒數(shù)/讀( Avg. Disk sec/Read) 從物理磁盤讀數(shù)據(jù)的平均時(shí)間,以秒為單位。
? 平均磁盤秒數(shù)/寫( Avg. Disk sec/Write) 向物理磁盤寫數(shù)據(jù)的平均時(shí)間,以秒為單位。
? 平均磁盤秒數(shù)/傳輸( Avg. Disk sec/Transfer) 從物理磁盤進(jìn)行傳輸?shù)钠骄鶗r(shí)間,以秒為單位。
? 磁盤讀/秒(Disk Reads Bytes/sec) 物理磁盤上每秒讀字節(jié)。
? 磁盤讀/秒(Disk Writes Bytes/sec) 物理磁盤上每秒寫字節(jié)。
? 磁盤讀/秒(Disk Reads/sec) 物理磁盤上的讀操作比率。
? 磁盤寫/秒(Disk Writes/sec) 物理磁盤上的寫操作比率。
? 磁盤傳輸/秒(Disk Transfers/sec) 物理磁盤上的讀和寫操作的比率。
- 12. 內(nèi)存
內(nèi)存在任何系統(tǒng)中都是一個(gè)非常有價(jià)值的資源。Windows NT不只允許過量使用內(nèi)存,而且鼓勵(lì)你過量使用內(nèi)存。Windows NT提供了一種透明機(jī)制,允許應(yīng)用“相信”它們具有比系統(tǒng)中可用的物理內(nèi)存更多的內(nèi)存。當(dāng)Windows NT處理應(yīng)用時(shí),它將不使用的內(nèi)存頁調(diào)出(交換出)到磁盤上的頁文件中。在大多數(shù)系統(tǒng)中,頁調(diào)度是正常的,但過量的頁調(diào)度會(huì)削弱整個(gè)系統(tǒng)的性能。下面的計(jì)數(shù)器允許你監(jiān)控系統(tǒng)的頁調(diào)度。
? 失效的頁/秒(Page Faults/sec) 每秒由處理器處理的失效頁的全部數(shù)量。當(dāng)一個(gè)進(jìn)程需
要的代碼或數(shù)據(jù)不在它的工作區(qū)(它的空間在物理內(nèi)存中)中時(shí),發(fā)生失效頁。這個(gè)計(jì)數(shù)
器包括硬的頁失效(那些需要磁盤訪問的)和軟的頁失效(在物理內(nèi)存的其他地方發(fā)現(xiàn)了失
效頁)。
? 讀的頁/秒(Page Reads/sec) 讀取磁盤以解決硬的頁失效所需要的時(shí)間數(shù)(當(dāng)一個(gè)進(jìn)程需要的代碼或數(shù)據(jù)不在其工作區(qū)或內(nèi)存中的其他地方,必須從磁盤提取這些代碼和數(shù)據(jù)時(shí),發(fā)生硬的頁失效)。這個(gè)計(jì)數(shù)器包括為滿足在文件系統(tǒng)高速緩存(通常是應(yīng)用請求的)以及在非高速緩存映像內(nèi)存文件中的失效而進(jìn)行的讀。
? 寫的頁/秒(Page Writes/sec) 將頁寫向磁盤以釋放物理內(nèi)存空間的時(shí)間數(shù)。只有當(dāng)頁在物理內(nèi)存中被改變的時(shí)候,將頁寫入磁盤,這樣,它們更有可能含有數(shù)據(jù),而不是代碼。
? 頁/秒(Pages/sec) 為解決硬的頁失效,所需要讀或?qū)懘疟P的時(shí)間數(shù)。它是讀的頁/秒與寫的頁/秒的計(jì)數(shù)器的和。
總結(jié)
以上是生活随笔為你收集整理的windows性能监视器常用计数器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 把时间当作朋友——第3章 管理
- 下一篇: 给android studio安装新字体