Как определить общий размер кэша ASP.Net?

Я использую кеш ASP.net в веб-проекте, и я пишу для него страницу статуса, которая показывает элементы в кеше и столько же статистики о кеше, сколько я могу найти. Есть ли способ получить общий размер (в байтах) кэшированных данных? Размер каждого элемента будет еще лучше. Я хочу показать это на веб-странице, поэтому я не думаю, что могу использовать счетчик производительности.

Ответы

Ответ 1

Я смотрю на свой монитор производительности и в категории ASP.NET Apps v2.0.50727. У меня есть следующие счетчики, связанные с кешем:

Используемый лимит памяти для кэша%

Используемый кэш-память%

В этой категории также есть много других связанных с кешем метрик.

Они должны иметь возможность получить процент, тогда, если вы можете получить общее количество, разрешенное с помощью Cache.EffectivePrivateBytesLimit или другим вызовом, вы сможете это выяснить. У меня нет личного опыта работы с этими счетчиками, поэтому вам нужно будет провести некоторое исследование и тестирование, чтобы проверить.

Вот краткая статья о чтении из счетчиков производительности: http://quickstart.developerfusion.co.uk/quickstart/howto/doc/PCRead.aspx

Ответ 2

Не пробовал. Но, возможно, вы можете использовать плагин Cache Manager для ASP.NET. Или используйте его в качестве примера.