Веб-кэш


Веб -кеш (или HTTP-кеш ) — это система оптимизации World Wide Web . Он реализован как на стороне клиента, так и на стороне сервера . Кэширование изображений и других файлов может привести к меньшей общей задержке при просмотре веб- страниц . [1]

Прямой кэш — это кэш вне сети веб-сервера , например, в веб-браузере клиента , у интернет- провайдера или внутри корпоративной сети. [2] Кэш пересылки с поддержкой сети кэширует только элементы с интенсивным доступом. [3] Прокси - сервер, расположенный между клиентом и веб-сервером, может оценивать заголовки HTTP и выбирать, сохранять ли веб-контент.

Обратный кеш находится перед одним или несколькими веб-серверами, ускоряя запросы из Интернета и снижая пиковую нагрузку на сервер. Обычно это сеть доставки контента (CDN), в которой хранятся копии веб-контента в различных точках сети.

Протокол передачи гипертекста (HTTP) определяет три основных механизма управления кэшем: актуальность, проверка и аннулирование. [4] Это указывается в заголовке ответных HTTP-сообщений с сервера.

Свежесть позволяет использовать ответ без его повторной проверки на исходном сервере и может контролироваться как сервером, так и клиентом. Например, заголовок ответа Expires указывает дату, когда документ становится устаревшим, а директива Cache-Control: max-age сообщает кешу, сколько секунд остается свежим ответ.

Проверка может использоваться для проверки того, является ли кэшированный ответ хорошим после того, как он устарел. Например, если в ответе есть заголовок Last-Modified, кэш может сделать условный запрос , используя заголовок If-Modified-Since, чтобы узнать, изменился ли он. Механизм ETag (тег объекта) также допускает как сильную, так и слабую проверку.