Как узнать количество активных пользователей при использовании StateServer - PullRequest
3 голосов
/ 30 октября 2008

Как узнать количество активных пользователей, когда вы используете StateServer? Также возможно ли запросить StateServer и получить содержимое в состоянии сеанса?

Я знаю, что это все возможно, если вы используете SqlServer для резервного копирования, но я хочу, чтобы они были в памяти.

Ответы [ 2 ]

6 голосов
/ 21 января 2010

Количество активных сеансов на сервере состояний можно легко просмотреть с помощью счетчика производительности на сервере, на котором запущен сервер состояний. Это напрямую не приравнивается к активным пользователям (из-за времени ожидания сеанса)

Счетчик активных сессий: «Asp.net» - «Сеансы сервера состояний активны»

Для справки, все счетчики перфмонов, относящиеся к State Server, начиная с http://msdn.microsoft.com/en-us/library/fxk122b4.aspx

Состояния сервера состояний прерваны Количество пользовательских сессий, которые были явно отменены. Это сеансы, которые завершаются конкретными действиями пользователя, такими как закрытие браузера или переход на другой сайт. Этот счетчик доступен только на компьютере, на котором запущена служба сервера состояний (aspnet_state).

Сеансы сервера состояний активны Количество активных в данный момент пользовательских сессий. Этот счетчик доступен только на компьютере, на котором запущена служба сервера состояний (aspnet_state).

Тайм-аут сеансов сервера состояний Количество пользовательских сессий, которые стали неактивными из-за бездействия пользователя. Этот счетчик доступен только на компьютере, на котором запущена служба сервера состояний (aspnet_state).

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

0 голосов
/ 30 октября 2008

Отслеживание количества пользователей должно быть выполнено на уровне приложения, а не на уровне сеанса.

Вы сможете увидеть, что в данный момент находится в сеансе, со следующим:

StringBuilder builder = new StringBuilder();
foreach ( String key in Session.Contents ) {
    builder.AppendFormat("{0}: {1}<br />", key, Session[key]);
}
Response.Write(builder.ToString());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...