0

http エンドポイントと tcp エンドポイント (nettcpbinding を使用) の両方を公開する Web サービス (WCF) があります。さまざまなエンドポイントを使用して、「送信された合計バイト数」の違いを測定しようとしています。

perfmon を使用してみましたが、パフォーマンス カウンターを確認しました: Web サービス > 送信された合計バイト数。ただし、これは http トラフィックのみを測定しているようです。これを確認できる人はいますか? tcp トラフィックが数値をインクリメントするようには見えません。

perfmon にも TCP カテゴリがありますが、「送信された合計バイト数」はありません。perfmon は仕事に適したツールではありませんか?

4

1 に答える 1

-2

解決しました。次のようなコードを使用して、クライアントで受信したバイト数を測定しました。

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);

これを Web サービス呼び出しの前後に実行し、2 つの値を比較します。明らかに、クライアント上の他のトラフィックが干渉しないことに注意する必要があります。

于 2011-09-28T07:37:08.940 に答える