Профили. Вместо того чтобы создавать свою собственную логику извлечения данных из базы, теперь можно использовать новый API-интерфейс с профилем и хранить специфическую информацию о пользователе в базе данных. Лучше всего то, что эта информация, в отличие от состояния сеанса, является строго типизированной. Профили входят в состав модели аутентификации ASP.NET.

Из этих четырех изменений в этой главе будут рассмотрены только первые два. Профили будут рассматриваться в главе 24, потому что они могут оказаться полезными при настройке системы аутентификации Windows или системы аутентификации с помощью форм. Рассмотрение специальных провайдеров состояний сеанса выходит за рамки контекста данной книги, однако с провайдерами сеансов сторонних производителей, которые позволяют использовать сеансы с другими реляционными базами данных, у читателя будет возможность познакомиться.

Управление состоянием в ASP.NET

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

В таблицах 6.1, 6.2, 6.3 приводится краткий сравнительный анализ всех доступных для управления состоянием опций.

Очевидно, что в опциях для управления состоянием в ASP.NET нет недостатка! К счастью, большинство из этих систем управления состоянием предоставляют похожий, основанный на коллекциях интерфейс программирования. Исключением является строка запроса (которая на самом деле представляет собой способ передачи информации, а не ее обслуживания), а также профили.

В этой главе мы рассмотрим все перечисленные в таблицах подходы к управлению состоянием, кроме тех, которые перечислены в табл. 6.3. Кэширование, незаменимая технология для оптимизации доступа к ограниченным ресурсам, будет подробно рассматриваться в главе 11, а профили, представляющие собой высокоуровневую модель для хранения специфической информации о пользователе, которая работает вместе с системой аутентификации ASP.NET — в главе 24. Однако прежде чем приступать к рассмотрению любого из этих вопросов, читатель должен внимательно ознакомиться с основными концепциями управления состоянием.

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

предыдущая    следующая страница    вначало главы    оглавление

254

Hosted by uCoz