Модель устаревания

Модель устаревания. Устаревание, указанное сервером. HTTP кэширование работает лучше всего тогда, когда кэши могут полностью избежать запросов к первоначальному серверу.

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

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

Если первоначальный сервер хочет вынудить семантически прозрачный кэш проверять достоверность каждого запроса, он может явно указать время устаревания в прошлом. Это означает, что ответ всегда просрочен, и, таким образом, кэш должен проверять его достоверность перед использованием для последующих запросов. Если первоначальный сервер хочет вынудить любой HTTP 1.1 кэш, независимо от того, как он сконфигурирован, проверять достоверность каждого запроса, он должен использовать директиву Cache-Control must-revalidate. Серверы указывают явное время устаревания, используя как заголовок Expires, так и директиву max-age заголовка Cache-Control.

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