我在Web项目中使用ASP.net缓存,我正在为它编写一个“状态”页面,其中显示了缓存中的项目,以及我可以找到的有关缓存的许多统计信息。有什么方法可以获得缓存数据的总大小(以字节为单位)?每个项目的大小会更好。我想在网页上显示这个,所以我认为我不能使用性能计数器。
答案 0 :(得分:16)
我正在查看我的性能监视器,在 ASP.NET Apps v2.0.50727 类别下,我有以下与缓存相关的计数器:
使用缓存%机器内存限制
使用缓存%进程内存限制
此类别下还有许多与缓存相关的指标。
这些应该可以为您提供百分比,然后如果您可以通过Cache.EffectivePrivateBytesLimit
或其他一些电话获得允许的总数,您应该能够弄明白。我没有这些计数器的个人经验,所以你必须做一些研究和测试来验证。
这是一篇关于从性能计数器读取的快速入门文章: http://quickstart.developerfusion.co.uk/quickstart/howto/doc/PCRead.aspx
答案 1 :(得分:1)
没试过。但也许你可以使用Cache Manager plug-in for ASP.NET。或者以它为例。