簡體   English   中英

如何使用性能計數器來跟蹤應用程序吞吐量

[英]How to use performance counters to track application throughput

我正在嘗試使用c#的性能計數器來跟蹤應用程序(實際上是Windows服務)的吞吐量。 但是我對如何解決這個問題有一個疑問。我的應用程序解析XML文檔,並且我想監視每單位時間解析多少文檔。 每次解析文檔時,我都會使用_counter.Increment(),但這總是使我解析的文檔總數(平面圖)。 我想繪制一些漂亮的圖,在其中可以設置要采樣的間隔,並獲取該間隔內的計數。

使用性能計數器是否有可能?或者我應該采用其他方法嗎?

謝謝。

如果要查看項目速率(例如每秒),則需要使用其他計數器類型。 例如:

PerformanceCounterType.RateOfCountsPerSecond32

如果為每個項目增加此值,它將在每秒性能中顯示為每秒計數而不是總計數(這是通過PerformanceCounterType.NumberOfItems32獲得的結果)。

完成文件解析后,始終可以減少計數器的數量。 這樣,您可以獲得任意一個時間點的活動分析數量,這實際上將為您提供非線性圖,因為這些分析將采用不同的間隔。

最簡單的方法是存儲文檔完成的時間戳(所以一個大數組)

給定此數據,您可以輕松扣除完成的總數,處理速度,每個時間步長的速度變化等。

可以使用excel(只是開始)進行這些統計,然后再使用一些精美的圖形庫添加到軟件中

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM