Измерение общего количества байтов, отправленных с веб-службы с помощью nettcpbinding с использованием perfmon

У меня есть веб-служба (WCF), предоставляющая как конечные точки http, так и конечную точку tcp (с использованием nettcpbinding). Я пытаюсь измерить разницу в «общем количестве отправленных байтов», используя разные конечные точки.

Я попытался использовать perfmon и посмотрел на счетчик производительности: веб-служба> общее количество отправленных байтов. Однако похоже, что это измеряет только http-трафик - может ли кто-нибудь из вас это подтвердить? Не похоже, что трафик tcp увеличивает число.

В perfmon также есть категория TCP, но нет «общего количества отправленных байтов». Является ли perfmon неподходящим инструментом для работы?


person sreddy    schedule 26.09.2011    source источник


Ответы (1)


Решено. Я измерил байты, полученные на клиенте, используя код, похожий на:

NetworkInterface[] interfaces = NetworkInterface.GetAllNetworkInterfaces();
NetworkInterface lan = null;

       foreach (NetworkInterface networkInterface in interfaces)
        {
            if (networkInterface.Name.Equals("Local Area Connection"))
            {
                lan = networkInterface;
            }
        }

        IPv4InterfaceStatistics stats = lan.GetIPv4Statistics();
        Console.WriteLine("bytes received: " + stats.BytesReceived);

Сделайте это до и после вызова веб-службы и сравните два значения. Очевидно, вам нужно знать, что любой другой трафик на клиенте не мешает.

person sreddy    schedule 28.09.2011