Кэширование в HTTP | Курс "Компьютерные сети"

Опубликовано: 16 Октябрь 2024
на канале: Andrey Sozykin
66,099
2.7k

Кэширование редко изменяющихся ресурсов в HTTP. Лекции по курсу "Компьютерные сети" - https://goo.gl/0aIOuf
Страница курса - http://www.asozykin.ru/courses/networ...

Современные Web-браузеры поддерживают кэширование редко меняющихся ресурсов, что позволяет сократить время загрузки web-страниц. Поддержка кэширования встроена в протокол HTTP.

Для определения, можно ли использовать копию ресурса из кэша, используется заголовок Expires, например:
Expires: Sun, 12 Jun 2016 10:35:18 GMT

Также можно использовать эвристику на основе заголовка Last-Modified.

Запрос GET с условием (Conditional GET) – запрос Web-серверу передать ресурс, если он изменился с указанного времени.

Ответы на запрос GET с условием:
Ресурс не изменился: короткое сообщение со статусом 304 Not Modified.
Ресурс изменился: полная передача измененной версии ресурса, статус ответа 200 ОК.

Определение изменения ресурса в запросе Get с условием:
По дате последнего изменения ресурса: заголовок If-Modified-Since (HTTP версия 1.0).
По тэгу (хэшу) ресурса: заголовок If-None-Match (HTTP версия 1.1)

В HTTP версии 1.1 появился новый заголовок для управления кэшем Cache-Control. Возможные значения:
no-store
no-cache
public
private
max-age=X (время в секундах)

Кроме кэша браузера, ресурсы могут быть сохранены на прокси-серверах и обратных прокси-серверах.

Лекция "Протокол HTTP" -    • Протокол HTTP | Курс "Компьютерные сети"  
Лекция "Постоянное соединение в HTTP" -    • Постоянное соединение в HTTP | Курс "...  

Практические занятия по курсу "Компьютерные сети" - https://goo.gl/YP3l83

Мой канал с краткими и понятными объяснениями сложных тем в ИТ и компьютерных науках:
https://goo.gl/kW93MA