我們在UNIX中使用iostat獲取所有這些信息。我能在Windows中做什麼?目前我們使用typeperf。獲取IO服務時間(svctm),等待時間(等待),windows服務器中的%util
回答
各項統計Windows已可以使用其Powershell的API來acessed:
獲取櫃檯 https://technet.microsoft.com/en-us/library/hh849685.aspx
因此,例如,如果你這樣做:
Set-Alias grep Select-String
(Get-Counter -List PhysicalDisk).PathsWithInstances | grep "C:"
你會得到你所有的統計信息列表C:驅動器
\PhysicalDisk(0 C:)\Current Disk Queue Length
\PhysicalDisk(0 C:)\% Disk Time
\PhysicalDisk(0 C:)\Avg. Disk Queue Length
\PhysicalDisk(0 C:)\% Disk Read Time
\PhysicalDisk(0 C:)\Avg. Disk Read Queue Length
\PhysicalDisk(0 C:)\% Disk Write Time
\PhysicalDisk(0 C:)\Avg. Disk Write Queue Length
\PhysicalDisk(0 C:)\Avg. Disk sec/Transfer
\PhysicalDisk(0 C:)\Avg. Disk sec/Read
\PhysicalDisk(0 C:)\Avg. Disk sec/Write
\PhysicalDisk(0 C:)\Disk Transfers/sec
\PhysicalDisk(0 C:)\Disk Reads/sec
\PhysicalDisk(0 C:)\Disk Writes/sec
\PhysicalDisk(0 C:)\Disk Bytes/sec
\PhysicalDisk(0 C:)\Disk Read Bytes/sec
\PhysicalDisk(0 C:)\Disk Write Bytes/sec
\PhysicalDisk(0 C:)\Avg. Disk Bytes/Transfer
\PhysicalDisk(0 C:)\Avg. Disk Bytes/Read
\PhysicalDisk(0 C:)\Avg. Disk Bytes/Write
\PhysicalDisk(0 C:)\% Idle Time
\PhysicalDisk(0 C:)\Split IO/Sec
從iostat的的男人頁(http://linuxcommand.org/man_pages/iostat1.html)
svctm
The average service time (in milliseconds) for I/O
requests that were issued to the device.
await
The average time (in milliseconds) for I/O requests
issued to the device to be served. This includes the time
spent by the requests in queue and the time spent servicing them.
我下面這些解釋:
https://unix.stackexchange.com/questions/104192/iostat-await-vs-svctm
http://www.xaprb.com/blog/2010/09/06/beware-of-svctm-in-linuxs-iostat/
包括不再使用svctm的討論。
如果你看到https://blogs.technet.microsoft.com/askcore/2012/02/07/measuring-disk-latency-with-windows-performance-monitor-perfmon/,你會看到Windows有類似的東西。
名爲 「\物理磁盤(*)\平均磁盤秒/傳輸」 措施的時間上花費的計數器:
- 類驅動程序
- 端口驅動程序
- 設備微型端口驅動程序
- 磁盤子系統
因此,例如我們可以監控這些統計信息:
Get-Counter -Counter "\PhysicalDisk(0 C:)\% Disk Time"
Get-Counter -Counter "\PhysicalDisk(0 C:)\Avg. Disk sec/Transfer"
,或者如果你願意的話,更多的「流水線」的版本:
"\PhysicalDisk(0 C:)\% Disk Time","\PhysicalDisk(0 C:)\Avg. Disk sec/Transfer" >> counters.txt
cat counters.txt | Get-Counter
對於每一個計數器的更詳細的說明,請參閱:
https://blogs.technet.microsoft.com/askcore/2012/03/16/windows-performance-monitor-disk-counters-explained/
還有一個實用程序「logman」。 鏈接關於這一主題: 克林特·霍夫曼博客&書 http://blogs.technet.com/b/clinth/ http://www.amazon.com/dp/0124167012/ref=wl...=I2TOVTYHI6HDHC
- 1. 獲取等待時間
- 2. 如何在c#中等待一段時間(windows服務)
- 3. 任務沒有等到等待時間
- 4. QTcpSocket,等待服務器
- 5. jQuery的時間進行等待服務器響應回
- 6. http請求花費太長時間等待服務器響應
- 7. 關閉在Windows服務中等待定時器的線程
- 8. 計算ANSI C中先到先服務的等待時間
- 9. 從Windows服務中使用等待定時器
- 10. 等待$ http.get完成服務調用時
- 11. 等待API服務器中的響應
- 12. 停止Windows服務等待AcceptTcpClient
- 13. TFS等待服務啓動
- 14. 等待服務任務獲取TaskCanceledException:任務被取消
- 15. 等待任務取消永久等待
- 16. 如何通過瀏覽器確定遠程服務器的等待時間
- 17. Windows會在啓動時等待我的服務嗎?
- 18. RMI:線程在等待服務器端
- 19. Rx Android - 等待服務器響應
- 20. 如何關閉等待服務器?
- 21. 不要等待服務器使用ZeroMQ
- 22. 流套接字等待服務器Swift
- 23. 停止並等待UDP服務器
- 24. 使用gocoder時發生IOException:超時等待服務器響應
- 25. 測量等待時間
- 26. Firebug Net等待時間
- 27. Tomcat零星等待時間
- 28. C++線程等待時間
- 29. SQL Server 2005網絡IO等待時間(ASYNC_NETWORK_IO等待類型)問題
- 30. 等待網絡配置在Windows服務啓動時完成