ASP.NET 2.0 предоставляет некоторые новые технические возможности для повышения производительности программы. Технология кэширования является очень важной функцией. Она обеспечивает очень хороший механизм локального кэширования данных, который можно легко настроить. Таким образом, можно эффективно повысить производительность доступа к данным.
У кэширования есть недостаток, который нелегко преодолеть: проблема истечения срока действия данных. Наиболее типичная ситуация заключается в том, что если содержимое данных в таблице базы данных кэшируется в памяти сервера, веб-приложение, скорее всего, будет отображать устаревшие и неточные данные при изменении записей в таблице базы данных. Для некоторых типов данных, даже если отображаемая информация устарела, влияние не будет значительным. Однако для данных, к которым предъявляются строгие требования в режиме реального времени, таких как цены на акции, аукционные ставки и другая информация, недопустимо отображать слегка устаревшие данные.
ASP.NET 2.0 поддерживает следующие типы кэшированного кэша вывода страниц. Кэш вывода страниц — это самый простой механизм кэширования. Этот механизм сохраняет все содержимое страницы ASP.NET в памяти сервера. Когда пользователь запрашивает страницу, система выводит соответствующие данные из памяти до тех пор, пока не истечет срок действия кэшированных данных. В этом процессе кэшированный контент отправляется непосредственно пользователю без необходимости повторного прохождения жизненного цикла обработки страницы. Как правило, кэширование вывода страницы особенно полезно для страниц, содержащих контент, который не нужно часто изменять, но требует большой обработки для завершения компиляции. Читателям следует обратить внимание, что кэш вывода страницы хранит все содержимое страницы в памяти и используется для выполнения клиентских запросов.
Частичный кеш страницы
Частичное кэширование страницы означает, что выходные данные кэшируют определенные части страницы вместо кэширования всего содержимого страницы. Существует два механизма реализации частичного кэширования страниц: один — поместить часть страницы, которую необходимо кэшировать, в пользовательский элемент управления (файл .ascx) и установить функцию кэширования для пользовательского элемента управления (страница, содержащая пользовательский элемент управления). может или не может быть установлено кэширование). Это обычно называется «кэшированием управления». Суть настройки кэша управления заключается в настройке кэша пользовательского элемента управления. В основном он включает в себя следующие три метода: один — использовать директиву @OutputCache для декларативного задания функции кэширования для пользовательского элемента управления; другой — использовать класс PartialCachingAttribute в файле кода программной части для установки кэша пользовательского элемента управления; заключается в использовании класса ControlCachePolicy для программного указания настройки кэша пользовательского элемента управления. Альтернативно, существует метод под названием «заменить после кеша». Этот метод является полной противоположностью кэширования элементов управления. Он устанавливает некэшируемую часть страницы. Поэтому, хотя вся страница кэшируется, при повторном запросе страницы содержимое, которое не было кэшировано, будет кэшироваться. переработанный.
Кэш данных приложения Кэш данных приложения обеспечивает программный способ хранения произвольных данных в памяти с использованием пар ключ/значение. Использование кэша приложения аналогично использованию состояния приложения. Однако, в отличие от состояния приложения, данные в кэше данных приложения являются непостоянными, то есть данные не сохраняются в памяти в течение всего времени существования приложения. Преимущество кэша данных приложения заключается в том, что ASP.NET управляет кешем, который удаляет элементы из кеша, когда срок их действия истек, недействителен или не хватает памяти. Кэш приложения также можно настроить на уведомление приложения при удалении элемента. .
зависимость от кэша
Пользовательские зависимости кэша, представленные в Net 2.0, особенно функция SqlCacheDependency, основанная на MS-SQL Server, позволяют нам избежать проблемы «истечения срока действия данных». Она может уведомлять кэш и удалять те, срок действия которых истек, на основе изменений в соответствующих данных в нем. База данных
Функция кэширования данных также имеет свои недостатки. Например, отображаемый контент может быть не самым последним и точным, и по этой причине необходимо установить соответствующие политики кэширования. Другой пример: кэширование увеличивает сложность системы и затрудняет тестирование и отладку, поэтому рекомендуется разрабатывать и тестировать приложение без кэширования, а затем включать опцию кэширования на этапе оптимизации производительности.