Поделиться через


Политика кэша

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

Политики кэша основаны на расположении или на основе времени. Политика кэша на основе расположения определяет свежесть кэшированных записей в зависимости от того, откуда можно взять запрошенный ресурс. Политика кэша на основе времени определяет свежесть кэшированных записей, используя время извлечения ресурса, заголовки, возвращаемые ресурсом, и текущее время. Большинство приложений могут использовать политику кэша на основе времени по умолчанию, которая реализует политику кэширования, указанную в RFC 2616, доступной на веб-сайте IETF.

Классы, описанные в следующей таблице, используются для указания политик кэша.

Имя класса Описание
HttpRequestCachePolicy Представляет политики кэша на основе расположения и на основе времени для ресурсов, запрошенных с помощью HttpWebRequest объектов.
RequestCachePolicy Представляет политики кэша, основанные на расположении, или политику кэша, основанную на времени, для ресурсов, запрашиваемых с помощью объектов Default.
HttpCacheAgeControl Задает значения, используемые для создания временных объектов HttpRequestCachePolicy.
HttpRequestCacheLevel Задает значения, используемые для создания объектов в зависимости от расположения и времени HttpRequestCachePolicy.
RequestCacheLevel Указывает значения, используемые для создания объектов на основе местоположения или времени DefaultRequestCachePolicy.

Политику кэша можно определить для всех запросов, сделанных приложением, или для отдельных запросов. При указании политики кэша на уровне приложения и политики кэша уровня запроса используется политика уровня запроса. Политику кэша на уровне приложения можно указать программным способом или с помощью файлов конфигурации приложения или компьютера. Дополнительные сведения см. в разделе <requestCaching> "Элемент " (Параметры сети)".

Чтобы создать политику кэша, необходимо создать объект политики, создав экземпляр RequestCachePolicy или HttpRequestCachePolicy класс. Чтобы указать политику в запросе, задайте свойство запроса CachePolicy объекту политики. При программном задании политики на уровне приложения задайте DefaultCachePolicy свойство объекту политики.

Примеры кода, демонстрирующие создание и использование политик кэша, см. в разделе "Настройка кэширования в сетевых приложениях".

См. также