我正在测试Azure辅助角色,该角色提供可供WPF桌面客户端使用的10-12种不同的服务操作。我通过Azure计费门户网站关注总输出带宽。看起来这些操作产生的带宽比我预期的要多。
有没有办法从WPF客户端角度“衡量”每个服务操作的总下载大小?我知道C#没有等效的sizeof运算符,所以我想我不能只做一个
sizeof(List<MyObjects>)
查看为任何特定呼叫传输的总字节数。
我想过可能会使用wireshark并以某种方式计算每个服务操作调用的数据包大小,并以这种方式查找带宽占用。
有更简单的方法吗?
答案 0 :(得分:1)
如果您的WCF服务在IIS下运行,则可以使用IIS的内置性能计数器,例如:
答案 1 :(得分:1)
性能计数器可以很好地计算发送/接收的总字节数。但是如果你想知道每个操作调用的数量,你需要在服务的一侧编写一个消息检查器。
这将允许您拦截每个传入和传出的消息,并且您将可以访问原始Message对象,从而可以测量请求的总大小和响应。