Сервер состояния сеанса IIS перестает работать через 30-60 минут - PullRequest
1 голос
/ 25 февраля 2011

Итак, у нас есть три сервера 2008 R2, на которых два настроены как веб-серверы (IIS 7.5), а третий - сервер состояния сеанса. Я установил параметры SessionState и MachineKey в приложениях web.config. После перезапуска двух веб-серверов я могу войти на один сервер, затем изменить IP-адрес на другой сервер, и я все еще вошел в систему. Успех.

Обычно я могу войти / выйти с любой учетной записью пользователя, изменить IP-адрес взад и вперед, и все будет хорошо, пока не произойдет какое-то случайное время между 30-60 минутами, когда я захожу на один сервер, меняю IP-адрес и новый сервер запрашивает учетные данные.

Это параметр sessionState в обоих файлах web.configs:

<sessionState mode="StateServer" stateConnectionString="tcpip=xxx.xxx.xxx.xxx:42424" cookieless="false" timeout="30"/>

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

Любая помощь будет принята.

Ответы [ 2 ]

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

Убедитесь, что у вас есть slidingExpiration="true" в authentication->forms элемент.

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

Тайм-аут сеанса и Тайм-аут авторизации форм не совпадают и не синхронизируются. Auth Forms запрашивает учетные данные, поскольку истекло время ожидания. Проверьте в SlidingExpiration . Сервер состояний не заботится, он просто взорвется, если вы укажете на что-то, что истекло. Кроме того, внимательно прочитайте о том, как работает SlidingExpiration, его сложность:

Скользящее истечение сбрасывает срок действия действительного куки-файл аутентификации, если запрос сделано и более половины таймаута интервал истек.

Обработка времени ожидания сеанса и аутентификации в ASP.Net

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