2010-05-24 4 views
1

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

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

все() { перед тем = { если (ActionName == 'зарегистрировались') { Защиту сессия = request.session // создает сессию, если не существует }} }

можно настроить монитор должен пройти в параметре, если мне нужно (то есть http://servername.com/?nosession, но не уверен, как убедиться, что сеанс не создан.

ответ

1

Прямо сейчас вы не можете ничего сделать, чтобы предотвратить создание сеанса. См.: http://jira.codehaus.org/browse/GRAILS-1238

К счастью, пока вы не нажмете большое количество запросов в секунду, это не является большой проблемой. Одна вещь, которую мы сделали, чтобы обойти ложные данные в нашем отчете «активные пользователи», заключалась в регистрации сеансов в базе данных. Мы создаем запись сеанса только тогда, когда пользователь входит в систему. Затем на специально отображенные URL-адреса мы будем «касаться» этой записи сеанса, чтобы обновить последнее доступное время. Запись сеанса отслеживает пользовательский агент, IP и т. Д. И полезна по многим причинам. Выполнение чего-то подобного обойдет счет фиктивного сеанса.

Смежные вопросы