0
我有一个Asp.Net应用程序,其中内存使用量随着时间增长到2.5GB或更多。网站正在大量使用System.Runtime.Caching.MemoryCache
。Asp.net内存使用情况 - 知道哪个部分是应用程序,哪部分是内存缓存
无论如何通过代码知道System.Runtime.Caching.MemoryCache
使用了多少内存,所以我可以知道问题是否缓存太多,或者应用程序中是否存在内存泄漏?
我有一个Asp.Net应用程序,其中内存使用量随着时间增长到2.5GB或更多。网站正在大量使用System.Runtime.Caching.MemoryCache
。Asp.net内存使用情况 - 知道哪个部分是应用程序,哪部分是内存缓存
无论如何通过代码知道System.Runtime.Caching.MemoryCache
使用了多少内存,所以我可以知道问题是否缓存太多,或者应用程序中是否存在内存泄漏?
首先看PhysicalMemoryLimit。它有多大?将其设置为适合您的环境的合理限制。
“PhysicalMemoryLimit属性返回单个MemoryCache类实例可以使用的物理计算机总内存的百分比,如果缓存实例超过了指定的限制,则会删除缓存条目。
也看看CacheMemoryLimit “获取缓存可以使用的计算机内存量(以字节为单位)”。
另请注意,您的应用程序正在使用多少个缓存实例,希望它使用Default。
另请参阅高速缓存条目的过期,通常它是DefaultCacheCapabilities ...