我遇到的问题是,我的ASP.NET 4 MVC 2 + WCF应用程序在负载测试期间使用Windows 2008 64 位应用程序中的大量内存,运行几分钟后它将耗尽几乎所有可用内存(8 GB) (我们做了有几个工作进程在运行)。
使用ANTS Memory Profiler进行分析后,它显示了一些有趣的结果:
根据上面的第1项,我测试了一些应用程序来测试问题是否是由于我们的应用程序或WCF引起的。测试应用程序只是将 XML 数据(约 300KB)加载到多线程应用程序中的数据集。当逻辑存储在 EXE 程序中时,应用程序在完成后仅使用 24 MB 专用字节中的 200 KB(从开始时额外使用 120 KB,其中 40 KB 用于未使用的内存)托管内存(这是可以接受的);但是当逻辑托管在 WCF 中时,应用程序使用 66 MB 托管内存(从 64 MB 空闲/未使用的托管内存开始额外使用 61 MB)。所以看来 …