как узнать, сколько ресурсов памяти я использую с переменными sessionState - PullRequest
2 голосов
/ 02 февраля 2011

Можно узнать, сколько ресурсов памяти я использую с переменными SessionState на сайте Asp.Net?Я не хочу вносить изменения в приложение, чтобы решить его.Будет здорово, если я смогу узнать это с помощью какого-либо инструмента или IIS.

Я планирую переместить sessionState из InProc в Sql, но сначала мне нужно узнать, насколько велика эта проблема.

Спасибо.

Ответы [ 3 ]

1 голос
/ 02 февраля 2011

Согласно этому ответу здесь нет способа узнать, сколько памяти используется сессией. Но вы можете сделать предположение (см. Также тот вопрос, который я связал, и ответ от Марка Шуппа здесь ):

Для каждой переменной сеанса:

2 * количество символов в имени
+ 8 байт
+ Размер данных

Помните, что строки хранятся внутри как Unicode (2 байта / символ).

0 голосов
/ 02 февраля 2011

Вы можете написать свои собственные и проверить количество данных в состоянии сеанса. Трудным путем ... Подробности здесь .

0 голосов
/ 02 февраля 2011

Вы можете попробовать это:

BinaryFormatter bf = new BinaryFormatter();
MemoryStream m = new MemoryStream();
foreach(var obj in Session) {
  bf.Serialize(m, obj);
}

long bytes = m.Length; // real size
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...