Asp.net内存使用-知道哪个部分是应用程序,哪个部分是内存缓存

本文关键字:内存 个部 缓存 应用程序 net Asp | 更新日期: 2023-09-27 18:29:34

我有一个Asp.Net应用程序,随着时间的推移,内存使用量将增长到2.5GB甚至更多。网站大量使用System.Runtime.Caching.MemoryCache

是否有代码可以知道System.Runtime.Caching.MemoryCache使用了多少内存,这样我就可以知道问题是缓存过多,还是应用程序中存在内存泄漏?

Asp.net内存使用-知道哪个部分是应用程序,哪个部分是内存缓存

首先查看PhysicalMemoryLimit。它有多大?为您的环境设置一个合理的限制。

PhysicalMemoryLimit属性返回MemoryCache类的单个实例可以使用的物理计算机内存总量的百分比。如果缓存实例超过指定的限制,则会删除缓存项。

另请查看CacheMemoryLimit"获取计算机上可由缓存使用的内存量(以字节为单位)。"

还要注意您的应用程序正在使用多少缓存实例,希望它使用Default。

还可以查看缓存项的exprirations,通常它是DefaultCacheCapabilities。。。