2016-02-16 2 views
0

Мы постоянно развертываем обновления для нашего приложенияОстановить сеанс, истекающий при перезапуске приложения

Однако каждое развертывание завершает все сеансы пользователя.

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

Каков наилучший подход?

ответ

1

Есть четыре основных способа обработки сессии (от MSDN):

режим InProc, который хранит состояние сеанса в памяти на веб-сервере. Это значение по умолчанию. StateServer mode, в котором хранится состояние сеанса в отдельном процессе, называемом государственной службой ASP.NET. Это гарантирует, что состояние сеанса сохраняется, если веб-приложение перезапускается, а также делает сеанс доступным для нескольких веб-серверов в веб-ферме.

Режим SQLServer хранит состояние сеанса в базе данных SQL Server. Это гарантирует сохранение состояния сеанса, если перезапуск веб-приложения , а также состояние сеанса доступа к нескольким серверам Web в веб-ферме.

Пользовательский режим, который позволяет указать пользовательского поставщика хранилища.

Вы, скорее всего, с помощью В сессии Процесс (первый в списке), который вызывает сеанс падает во время процесса развертывания.

Переход на любой из других будет соответствовать вашим требованиям, но ни один из них не является экземпляром, и все они имеют проблемы и недостатки, поэтому вам нужно будет выбрать тот, который соответствует вашим потребностям (и вашим организациям).

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