Нужно образование относительно HttpApplicationState из ASP.net - PullRequest
1 голос
/ 18 июня 2009

Сегодня меня запутали 2 проблемы, связанные с HttpApplicationState на ASP.net. Мои вопросы следующие

  1. Если я использую StateServer для управления сессиями (средство управления сессиями out proc, которое я хочу использовать для своего развертывания в веб-саду), безопасно ли предполагать, что HttpApplicationState (я получаю доступ через систему Свойство .Web.UI.Page.Application) также хранится внутри StateServer как сеанс? Так что, если мой рабочий процесс A записывает значение «10» в Page.Application, другой запрос, выполняющийся в технологическом процессе B через некоторое время, должен увидеть это «10» для того же ключа - это правильно?

  2. Один из моих коллег-разработчиков сказал мне, что он обнаружил в своем тесте, в сценарии StateServer, , если у него есть 100 записей значения ключа, вставленных в Page.Session, тогда, когда он пытается прочитать любой из ключ из другого запроса, рабочий процесс заносит все 100 записей в пространство памяти активного рабочего процесса и затем передает ключ, который фактически был запрошен запросом. верно ли это?

Буду очень признателен, если кто-нибудь поможет мне устранить мои заблуждения по этому поводу.

Спасибо!

Ответы [ 2 ]

3 голосов
/ 18 июня 2009
  1. StateServer поддерживает только состояние сеанса, состояние приложения ограничено доменом приложения.

  2. StateServer хранит сериализацию сеанса. У него нет способа узнать, как получить доступ к определенному значению ключа. При обращении к сеансу он перенаправляется в нужное ему приложение и используется в качестве обычных данных сеанса на время запроса.

0 голосов
/ 18 июня 2009
  1. Насколько я знаю, сервер состояний вне процесса не хранит данные HttpApplicationState. Вы можете легко проверить это, но я сомневаюсь, что это так.

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

...