2009-09-16 3 views
9

Какова накладная производительность при запуске Session State Server вместо InProc? Это важно? Я понимаю, что вы можете перезапустить w3wp с сервера состояния и сохранить все состояние сеанса - это единственное преимущество перед InProc?Сервер сеанса сеанса ASP.NET против сеанса InProc

ответ

10

Это зависит от ваших планов развертывания: на одном сервере штраф невелик, но преимущество в равной степени ограничено: ваше состояние сеанса выживает при переработке процесса (как уже упоминалось), но об этом. У вас будет какой-то кросс-процесс, сортирующий с режимом StateServer, поэтому ожидайте некоторую дополнительную загрузку процессора, ничего слишком впечатляющего.

В настройках веб-фермы/балансировки нагрузки InProc не работает, если только вы не можете настроить липкие сеансы/сродство к серверу. Помните о том, что сам узел StateServer может стать единственной точкой отказа, поэтому не забудьте компенсировать это. Сказав это, латентность StateServer в целом намного меньше (= лучше), чем при использовании режима SQLServer.

Убедитесь, что ваш код/​​сайт изящно обрабатывает потерянное состояние, независимо от того, где вы храните данные.

0

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

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

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