2010-07-31 2 views
0

Я сохраняю свои данные пользователя в переменной сеанса. При некоторых операциях ввода-вывода другой пользовательский сеанс также уничтожает. Если я запускаю одно и то же приложение в среде единого сервера, сеанс работает нормально.Классический сеанс ASP прерывается, когда сайт размещается в Cloud Enviornmnet

Я также проверил этот код {meta name = 'test' content = 'Set-Cookie: ASPSESSIONID = 494351627; path =/'/}

В чем проблема?

Заранее спасибо.

+0

В облачной среде: как распределяются запросы между несколькими серверами? Есть ли балансировка нагрузки впереди? Если да, как вы обеспечиваете, чтобы несколько запросов в сеансе переходили на один и тот же сервер? Если они не будут работать, сеанс будет нарушен при переключении серверов. – arielf

ответ

1

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

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

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

Если это большое приложение с большой вероятностью переменных сеанса, вы бы хотели пойти на вариант A, если это возможно.

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