2012-02-28 5 views
0

Из того, что я читал, когда состояние сеанса находится в режиме SQLServer, ему всегда нужно получить доступ к БД для получения и установки переменных сеанса. Это правда или может использовать кеш в какой-то ситуации? Если у вас есть хорошие статьи о том, как этот режим работает под капотом, не стесняйтесь делиться ими здесь. Я просто не могу найти ничего интересного в Google.Состояние сеанса Режим SQLServer

Я пытаюсь оценить риски, связанные с использованием этого (производительность, надежность и т.д.)

Спасибо!

ответ

2

Надежность: насколько надежным является ваш экземпляр SQL Server? Он сгруппирован? Это на удаленном сервере?

Производительность: Состояние сеанса SQL Server является одним из самых низких значений состояния сеанса сеанса. Я предполагаю, что вы используете это в приложении ASP.NET и имеете более одного веб-сервера. Для каждого запроса, который требует состояния сеанса, он выполнит по меньшей мере 1 запрос к базе данных. Если состояние сеанса обновляется во время запроса, будет выполнен один дополнительный запрос на обновление. В дополнение, все, что хранится в состоянии сеанса, будет считано/обновлено. Если вы можете быть осторожны, чтобы ограничить, какие страницы/ресурсы требуют состояния сеанса, он может работать нормально.

Альтернативы: Если вы работаете только на одном веб-сервере, вы можете использовать State Server. Если вам необходимо поддерживать несколько веб-серверов, вы можете рассмотреть возможность использования провайдера App Fabric Caching Session State или NCache. Оба они будут работать лучше, чем SQL Server и потенциально более отказоустойчивы, чем SQL Server.

+0

Большое спасибо за ваш ответ Фил! Очень интересно это приложение Fabric. Не знал об этом. –

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