Jump to content

Отрицательный кеш

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

Рассмотрим веб-браузер , который пытается загрузить страницу, пока сеть недоступна. Браузер получит код ошибки, указывающий на проблему, и может отобразить это сообщение об ошибке пользователю вместо запрошенной страницы. Однако браузеру неправильно помещать сообщение об ошибке в кэш страниц, поскольку это приведет к повторному отображению ошибки, когда пользователь попытается загрузить ту же страницу - даже после восстановления сети. страницы Сообщение об ошибке не должно кэшироваться под URL-адресом ; до тех пор, пока браузер не сможет успешно загрузить страницу. Всякий раз, когда пользователь пытается загрузить страницу, браузер должен предпринять новую попытку.

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

Бывают случаи, когда состояния, подобные сбоям, необходимо кэшировать. Например, DNS требует, чтобы кэширующие серверы имен запоминали отрицательные ответы. [1] так и положительные. Если авторитетный сервер имен возвращает отрицательный ответ, указывающий, что имя не существует, оно кэшируется. Отрицательный ответ может быть воспринят как сбой на уровне приложения; однако для сервера имен, кэширующего его, это не является ошибкой. Время кэширования для отрицательного и положительного кэширования можно настраивать независимо.

Описание

[ редактировать ]

Отрицательный кэш обычно желателен только в том случае, если сбой очень дорог и состояние ошибки возникает автоматически без действий пользователя. Создается ситуация, когда пользователь не может выявить причину сбоя: несмотря на исправление всего, что можно придумать, программа по-прежнему отказывается работать. При кэшировании сбоя программа должна четко указывать, что необходимо сделать для очистки кэша, а также описание причины ошибки. В таких условиях отрицательный кэш является примером антишаблона проектирования .

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

См. также

[ редактировать ]
  1. ^ RFC 2308


Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 89cb26dc1c1f340518a6006b5bbd16d6__1638753180
URL1:https://arc.ask3.ru/arc/aa/89/d6/89cb26dc1c1f340518a6006b5bbd16d6.html
Заголовок, (Title) документа по адресу, URL1:
Negative cache - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)