2

我们正在一台具有 16 GB RAM、IIS 8.5 和 .Net 4.5.2 的机器上运行一个网站。

回收我们的网站后,w3wp 进程内存在一天内增加到 9 GB。

(机器范围的视图,但只有我们的网站工作进程内存使用量增加) 机器范围的视图,但只有我们的网站工作进程内存使用量增加

当我使用 PerfView 获得工作进程的堆快照时,我看到大部分内存都由 MemoryCache 持有

快照后的第一个视图

当我转到 MemoryCache 详细信息时,我看到 3 个命名缓存。其中之一是默认的,我们不会在上面放任何东西。另一种称为timeless,我们放置少量数据,这些数据将一直存在直到回收。最大的一个(名为_cache),我们将html输出放在上面,它增加到70K-80K项目,大约10到30分钟的缓存时间。

内存缓存详细信息

当我右键单击 _cache 项目并打开 Memory > View Object 时,我看到一个列表如下:

缓存项列表

我正在获取缓存项目及其大小的列表并尝试将它们相加,我发现总项目大小低于 100 MB。

有什么办法可以让我看到什么是不断增加的?

4

0 回答 0