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


Политики кэша на основе времени

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

Критерии для определения актуальности записей в кэше

Для настройки политики кэша на основе времени можно настроить один или несколько из следующих критериев актуальности записей в кэше:

  • максимальный срок действия;

  • максимальный возраст;

  • минимальная актуальность;

  • дата синхронизации кэша.

Примечание.

Использование кэша политики на основе времени по умолчанию не следует путать с заданием политики кэша по умолчанию для приложения. Политика на основе времени по умолчанию — это конкретная политика, которую можно использовать на уровне приложения или запросов. Политика кэша по умолчанию для приложения — это политика (на основе расположения или времени), которая вступает в силу, если политика для запроса не задана. Подробные сведения о задании политики кэша по умолчанию для приложения см. в разделе DefaultCachePolicy.

Maximum Age

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

Максимальный возраст

Критерий максимального возраста определяет то, как долго может использоваться кэшированная копия ресурса после истечения срока ее действия. Это единственный критерий политики кэша, который разрешает использовать ресурсы с истекшим сроком действия.

Минимальная актуальность

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

Дата синхронизации кэша

Критерий даты синхронизации кэша определяет то, когда необходимо повторно проверить кэшированную копию ресурса, сравнив ее с содержимым на сервере. Если содержимое изменилось с момента кэширования объекта, он извлекается с сервера, сохраняется в кэше и возвращается приложению. Если содержимое не изменилось, его метка времени обновляется и приложение получает содержимое из кэша.

С помощью даты синхронизации кэша можно указать абсолютную дату, когда кэшированное содержимое должно быть проверено повторно. Если актуальная запись в кэше была в последний раз повторно проверена до даты синхронизации кэша, повторная проверка все же выполняется. Если запись в кэше была повторно проверена после даты синхронизации кэша и нет дополнительных требований к актуальности или повторной проверке на сервере, используется запись из кэша. Если дата синхронизации кэша — это будущая дата, запись повторно проверяется каждый раз, когда она запрашивается, пока эта дата не пройдет.

В следующих разделах приводятся сведения о том, как действуют различные сочетания критериев для политики кэша на основе времени:

См. также