【问题标题】:How to determine the size in bytes of the ASP.NET Cache?如何确定 ASP.NET 缓存的字节大小?
【发布时间】:2010-11-27 18:24:35
【问题描述】:

我正在积极开发使用服务器端缓存的 ASP.NET Web 应用程序,我正在尝试了解如何在一些规模测试期间监控此缓存的大小。缓存存储各种大小的 XML 文档,其中一些是数兆字节。

System.Web.Caching 命名空间的System.Web.Caching.Cache 对象上,我看到了各种属性,包括Count,它获取“存储在缓存中的项目数”和EffectivePrivateBytesLimit,它获取“可用的字节数缓存。”没有什么能告诉我缓存的大小(以字节为单位)。

在“.NET Framework 应用程序的缓存体系结构指南”指南的Understanding Caching Technologies 部分中,有一个“管理缓存对象”部分,其中包含一个表(表 2.2:用于监视缓存的应用程序性能计数器),其中列出了一组应用程序性能计数器,但我没有看到任何提供当前缓存大小的信息。

找到这个缓存大小的好方法是什么?我是否必须在缓存上设置字节限制并查看其中一个周转率?我是否以错误的方式思考这个问题?回答How to determine total size of ASP.Net cache真的是最好的方法吗?

【问题讨论】:

    标签: asp.net caching monitoring scaling


    【解决方案1】:

    在我阅读之前,我正打算对您在问题中提到的answer 进行不太详细的说明。我会向你推荐这个,对我来说似乎很合适。没有比查看服务器上的物理尺寸更好的方法了,其他任何东西都可能不准确。

    您可能想要设置一些监控,Powershell 脚本可能会很方便地记录并在报告中发送给您自己。这样你就可以在一夜之间运行各种测试并总结它。

    另一方面,它们听起来像是要放入内存缓存的非常大的文档。您是否考虑过为这些较大的项目使用disk based cache,并将内存留给更适合它的较小项目。如果您的磁盘相当快,这应该是相当高性能的。

    【讨论】:

    猜你喜欢
    • 2010-09-25
    • 2010-12-18
    • 2015-04-10
    • 2020-01-09
    • 2011-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多