【发布时间】:2014-11-26 21:23:55
【问题描述】:
基本上,我创建了一个 netTcpBinding WCF 服务,其方法返回一组从 500 到 50000 个对象的简单对象。这些对象包含一些字符串、int 和 DateTime 属性。调用此方法后,我试图测试内存消耗。我注意到,当我使用经典的 ASMX Web 服务执行相同的测试时,在这种情况下内存消耗更少。我的理解是 netTcpBinding WCF 服务中的消息是二进制编码的,而它们在 ASMX Web 服务中是 XML 格式的,因此在前一种情况下消息应该更小。但是,从 netTcpBinding 服务返回的消息几乎是 ASMX 消息大小的 2 倍。知道为什么会这样吗?
【问题讨论】:
-
你是如何测量内存利用率的?
-
在调用前后使用 GC
-
这不是衡量内存利用率的有效方法。您需要使用内存分析器来执行此操作。
-
像什么?你有免费工具的链接吗?
标签: c# web-services wcf soap nettcpbinding