Измерение среднего времени выполнения в обслуживании - PullRequest
0 голосов
/ 12 марта 2011

Я пытаюсь использовать счетчики производительности Windows для измерения числа обращений в секунду и секунд на посещение службы WCF и вижу некоторые странные результаты.

В настоящее время я делаю следующее:

public void MethodToTime()
{
    StopWatch sw = new StopWatch();
    sw.Start();

    //...do stuff...

    totalHitsCounter.Increment();  //this one works fine - NumberOfItems32 counter
    hitsPerSecondCounter.Increment();  //appears broken - RateOfCountsPerSecond32 counter
    secondsPerHitBaseTime.Increment(); //can't tell - AverageBase counter

    sw.Stop();
    secondsPerHitCounter.IncrementBy( sw.ElapsedTime );  //appears broken - AverageTimer32
}

В конце дня я хочу знать:

-Этот метод был вызван x раз (за время его существования).-Этот метод занимает, в среднем, хх секунд, чтобы выполнить.-Этот метод вызывается x раз в секунду (во всех экземплярах службы, поскольку один вызов службы приводит к одному вызову метода).

Я на правильном пути?Есть ли лучший способ подойти к этому вопросу?Любая обратная связь очень ценится:)

Спасибо всем заранее!

1 Ответ

0 голосов
/ 12 марта 2011

Точно так же, как вы знаете, секунды / попадание - это просто обратное попадание / секунда Вам просто нужно разделить 1 на ваши удары / секунду, чтобы получить его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...