【发布时间】:2010-09-25 13:04:39
【问题描述】:
我在一个 Web 项目中使用 ASP.net 缓存,我正在为它编写一个“状态”页面,它显示缓存中的项目,以及我能找到的关于缓存的尽可能多的统计信息。有什么方法可以获得缓存数据的总大小(以字节为单位)?每个项目的大小会更好。我想在网页上显示它,所以我认为我不能使用性能计数器。
【问题讨论】:
标签: c# asp.net caching performancecounter
我在一个 Web 项目中使用 ASP.net 缓存,我正在为它编写一个“状态”页面,它显示缓存中的项目,以及我能找到的关于缓存的尽可能多的统计信息。有什么方法可以获得缓存数据的总大小(以字节为单位)?每个项目的大小会更好。我想在网页上显示它,所以我认为我不能使用性能计数器。
【问题讨论】:
标签: c# asp.net caching performancecounter
我正在查看我的性能监视器,在 ASP.NET Apps v2.0.50727 类别下,我有以下与缓存相关的计数器:
使用的缓存百分比机器内存限制
使用的缓存百分比进程内存限制
此类别下还有很多其他与缓存相关的指标。
这些应该能够为您提供百分比,然后如果您可以通过Cache.EffectivePrivateBytesLimit 或其他一些电话获得允许的总数,您应该能够弄清楚。我没有使用这些计数器的个人经验,因此您必须进行一些研究和测试才能验证。
这是一篇关于从性能计数器读取的快速入门文章: http://quickstart.developerfusion.co.uk/quickstart/howto/doc/PCRead.aspx
【讨论】:
pc.InstanceName = "__Total__";witch 可以从MSDN
没试过。但也许你可以使用Cache Manager plug-in for ASP.NET。或者以它为例。
【讨论】: