Упреждающая проверка актуальности

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

Метод HEAD HTTP дает возможность осуществлять выборку метаданных ресурса без фактической передачи ресурса. Кэш может выдать запрос HEAD и проверить, является ли кэшированный ответ по-прежпему актуальным. Если метаданные, возвращенные в ответе на запрос HEAD, свидетельствуют о том, что кэшированный ответ устарел, кэш может отправить запрос GET. Однако запрос HEAD требует установление НТТР-соедипения, т.е. сопровождается теми же затратами, которые имеют место для запроса GET, за исключением фактической передачи ресурса. Таким образом, в тех случаях, когда кэшировапный ответ является устаревшим, потребуется два отдельных запроса, что приведет к удвоению затрат. Кэш может использовать эвристические методы для принятия решения, какой запрос, HEAD или GET, отправить. Предварительная проверка актуальности посредством запросов HEAD потенциально снижает требования к пропускной способности сети, Однако при этом загружает исходный сервер большим количеством запросов. Заметим, что использование кэшем запроса GET с заголовком If-Modified-Since не является упреждающей проверкой актуальности. Сервер, получающий такой запрос, может отправить ответ типа 200 OK с содержимым ресурса.

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

Источник: Web-протоколы. Теория и практика. — M.: ЗАО «Издательство БИНОМ», 2002 г. – 592 c.: ил.

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100