Общий кеш находится между клиентами и источником, предоставляя сохраненные ответы множеству клиентов. Таким образом, вы можете обслуживать JavaScript и CSS с помощью URL-адресов, которые содержат изменяющуюся часть на основе номера версии или хэш-значения. Наконец, мы внимательно рассмотрели анатомию современного сетевого приложения, чтобы понять, почему задержка является новым узким местом модели, что делает кэширование актуальным в настоящее время и в ближайшие годы, даже при постоянном развертывании H2. И нередко такое разрешение DNS занимает от 50 до 250 миллисекунд.
- Заголовок включает строку, которая однозначно идентифицирует содержимое, обычно это контрольная сумма файла.
- Общий кеш находится между покупателями и источником, предоставляя сохраненные ответы множеству пользователей.
- Основная выгода заключается в гораздо более быстром времени ответа, поскольку покупатель повторно использует сохраненные ответы вместо того, чтобы обращаться к исходному серверу для каждого запроса.
- Отметьте что-то, специфичное для пользователя, как личное или не хранящееся, чтобы общий кеш или CDN никогда не передавали знания одного человека другому, и используйте Differ в заголовках, таких как авторизация.
- Общий кеш обслуживает несколько клиентов и обычно находится между клиентом и сервером.
- Директива no-cache не предотвращает сохранение ответов, однако в качестве альтернативы предотвращает повторное использование ответов без повторной проверки.
Протокол HTTP/1.1 содержит множество компонентов, предназначенных для обеспечения работы кэширования. Это помогает превратить решения о страховом покрытии в конкретные проверки и оценку компромиссов. Как работает кеширование, легче понять, когда вы связываете его с близкими понятиями, а не читаете его изолированно. Он хранит краткую копию знаний или контента, чтобы ее можно было использовать повторно раньше. Проблемы с кэшированием, поскольку оно, несомненно, считается одним из наиболее распространенных методов повышения эффективности и сокращения повторной работы. Это может сократить задержку, сэкономить ресурсы и улучшить согласованность под нагрузкой.
Неправильно настроенный ключ кэша является стандартным источником отравления кэша или непреднамеренного обмена контентом между пользователями. Кэши CDN идентифицируют сохраненные ответы по ключу кэша, обычно URL-адресу запроса. Компромисс — это быстрый момент, когда покупатели получают немного устаревший контент. Заголовок Vary сообщает кэшам розничного продавца отдельные варианты одного и того же URL-адреса, в основном на основе определенных значений заголовка запроса. После получения этого ответа поддерживающий кеш аннулирует сохраненные ответы, помеченные группой «списки продуктов» из идентичного источника. Недействительность помечает сохраненные ответы как требующие повторной проверки.

Когда что-то кэшируется, более поздний запрос часто может быть обработан из кеша вместо обращения к исходному, более медленному источнику. В случае промаха в кэше сервер CDN перенаправит запрос на исходный сервер, а затем кэширует материал контента так же быстро, как исходный сервер ответит, так что последующие запросы завершатся попаданием в кэш. Когда пользователь запрашивает материал контента с сетевого сайта с помощью CDN, CDN извлекает этот материал контента с исходного сервера, а затем сохраняет дубликат материала контента для будущих запросов. CDN или сеть доставки контента кэширует контент (например, изображения, фильмы или веб-страницы) на прокси-серверах, которые могут быть расположены ближе к конечным клиентам, чем исходные серверы.
Хотя протокол DNS основан на UDP, а не на TCP, путь к получению IP-адреса имени хоста может быть действительно длительным и включать несколько DNS-серверов. Возможно, именно это делает Интернет таким особенным в развивающемся мире программного обеспечения. В качестве прокси-серверов они действуют прозрачно как для клиентов, так и для серверов. Именно поэтому изучение HTTP-кеширования является хорошей ставкой, поскольку оно актуально во многих разных местах. Во-первых, это означает, что этим могут управлять отдельные лица, помимо разработчиков, что можно рассматривать как силу или слабое место, в первую очередь с вашей точки зрения. Кроме того, все они предоставляют некоторый сетевой интерфейс, который позволяет легко предоставлять рекомендации по кэшированию, которые могут как vps server переопределять, так и корректно работать с директивами восходящего кэширования, поступающими с исходных серверов.
