Введение
Система оптимизации сети Интернет-кэш (или HTTP-кэш) — это система оптимизации Всемирной паутины. Она реализована как на стороне клиента, так и на стороне сервера. Кэширование мультимедийных и других файлов может привести к уменьшению общей задержки при работе в сети Интернет.
A Web cache (or HTTP cache) is a system for optimizing the World Wide Web. It is implemented both client side and server side. The caching of multimedia and other files can result in less overall delay when browsing the Web.
Вперед и назад
Передаточный кэш — это кэш, расположенный вне сети веб-сервера, например, в веб-браузере клиента, у интернет-провайдера или в корпоративной сети. Сетевой передаточный кэш кэширует только часто запрашиваемые элементы. Прокси-сервер, находящийся между клиентом и веб-сервером, может анализировать HTTP-заголовки и решать, следует ли сохранять веб-контент. Обратный кэш располагается перед одним или несколькими веб-серверами, ускоряя запросы из Интернета и снижая пиковую нагрузку на сервер. Как правило, это сеть доставки контента (CDN), которая хранит копии веб-контента в различных точках сети.
Опции HTTP
Протокол передачи гипертекста (HTTP) определяет три основных механизма управления кэшами: свежесть, проверка и недействительность. Это указывается в заголовке HTTP-ответов сервера. Свежесть позволяет использовать ответ повторно, не запрашивая его снова на исходном сервере, и контролируется как сервером, так и клиентом. Например, заголовок Expires указывает дату, после которой документ считается устаревшим, а директива Cache-Control: max-age сообщает кэшу, как долго ответ считается свежим в секундах. Проверка используется для определения, актуален ли кэшированный ответ после истечения срока его свежести. Например, если в ответе присутствует заголовок Last-Modified, кэш может отправить условный запрос с заголовком If-Modified-Since, чтобы проверить, был ли документ изменен. Механизм ETag (метка сущности) также позволяет выполнять как строгую, так и слабую проверку. Недействительность обычно является побочным эффектом другого запроса, проходящего через кэш. Например, если URL, связанный с кэшированным ответом, впоследствии получает запрос POST, PUT или DELETE, кэшированный ответ будет аннулирован. Многие CDN и производители сетевого оборудования заменили стандартное управление кэшем HTTP динамическим кэшированием.
Законность
В 1998 году DMCA внес поправки в Кодекс законов США (17 U.S.C. § 512), освобождающие операторов систем от ответственности за нарушение авторских прав в отношении кэширования.