Количество сеансов остается неизменным после выхода пользователя из системы - PullRequest
0 голосов
/ 17 ноября 2010

С помощью счетчика производительности для наблюдения " Всего сеансов " я обнаружил, что число сеансов остается неизменным после выхода пользователя из системы.Это ожидаемое поведение в IIS7?

Вот реализация выхода из системы:

Session.Clear();
Session.Abandon();
FormsAuthentication.SignOut();

Спасибо.

Ответы [ 4 ]

2 голосов
/ 17 ноября 2010

Я думаю, что вы смотрите не на тот счетчик:

  • Всего сеансов - это общее количество сеансов с момента запуска веб-приложения (это число никогда не уменьшится, если вы не перезапустите веб-приложение)
  • Sessions Active - текущее количество активных сессий (<- это то, что вы хотите посмотреть) </li>
1 голос
/ 17 ноября 2010

Один сеанс может быть уничтожен, но вскоре после этого будет создан другой. Тот факт, что пользователь больше не проходит проверку подлинности, не означает, что у него нет состояния сеанса.

Весьма вероятно, что сеанс уничтожен, но при следующем запросе (который, как я предполагаю, находится в том же домене / сервере, вызывает повторное использование идентификатора сеанса и, таким образом, создание пустого состояния сеанса с тем же идентификатором сеанса)

Все это, конечно, предполагает, что вы перенаправляете на местоположение на том же веб-сайте сразу после выхода из системы.

1 голос
/ 17 ноября 2010

Вы выходите из системы, как этот пользователь?

1 голос
/ 17 ноября 2010

Сеанс НЕ привязан к аутентификации форм, если вы это используете. Вы звоните Session.Abandon(), когда пользователь выходит из вашего приложения? Тем не менее, если пользователь прекратит использование приложения без выхода из системы, сеанс будет оставаться открытым до истечения срока его действия. Время истечения сеанса можно установить в файле web.config.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...