【问题标题】:How to interpret: WCF Performance counters Calls per second and Calls Duration如何解释:WCF Performance counters Calls per second 和 Calls Duration
【发布时间】:2012-06-26 12:20:32
【问题描述】:

我在操作级别监控 WCF 的两个性能计数器: - 通话时长 - 每秒调用次数

我已经为 perfmon 中的数据计数器日志设置了一个采样间隔。我不确定如何解释这些计数器。

因此假设我们每秒钟采样一次。
来自 MSDN:

通话时长:
调用此操作的平均持续时间。平均持续时间根据以下公式计算:(N1-N0)/(D1-D0)。

每秒调用次数:
每秒调用此操作的次数。
该计数器属于性能计数器类型 PERF_COUNTER_COUNTER,其值使用以下公式计算。

(N 1 - N 0 ) / ( (D 1 -D 0 ) / F)

我将这两个性能计数器的日志记录了一个小时。
通话时长的示例日志:

Timestamp              Call Duration
06/25/2012 17:58:52.755 0.05476632
06/25/2012 17:58:53.753 0
06/25/2012 17:58:54.751 0
06/25/2012 17:58:55.765 0
06/25/2012 17:58:56.764 0.058265824
06/25/2012 17:58:57.762 0
06/25/2012 17:58:58.760 0
06/25/2012 17:58:59.758 0
06/25/2012 17:59:00.757 0
06/25/2012 17:59:01.755 0
06/25/2012 17:59:02.753 0
06/25/2012 17:59:03.752 2.90697808


示例日志:每秒调用次数:

Timestamp              Calls per second
06/25/2012 17:48:08.752 1.001692492
06/25/2012 17:48:09.750 0
06/25/2012 17:48:10.764 0.986190617
06/25/2012 17:48:11.762 1.00156982
06/25/2012 17:48:12.761 0
06/25/2012 17:48:13.759 0
06/25/2012 17:48:14.757 0.994411867
06/25/2012 17:48:15.756 0
06/25/2012 17:48:16.754 0

我想从这些数据中回答的是:
“n”个通话中有多少个通话时间超过 2 秒?
更多信息here

【问题讨论】:

    标签: wcf performancecounter


    【解决方案1】:

    (N1-N0)/(D1-D0) 表示 (DataFromSample2 - DataFromSample1) / (TimeAtSample2 - TimeAtSample1)

    因此,您获得的 Call Duration 和 Calls per second 的值是当前样本和先前样本的平均值,这些计数器无法判断“n 个调用中有多少个调用花费了 2 秒以上? ”。

    您可以创建客户计数器价值,请参阅LINK

    【讨论】:

      猜你喜欢
      • 2013-11-27
      • 1970-01-01
      • 1970-01-01
      • 2011-07-11
      • 2022-12-19
      • 2015-08-04
      • 1970-01-01
      • 2023-01-24
      • 1970-01-01
      相关资源
      最近更新 更多