Аннулирование кеша - Cache invalidation

Аннулирование кеша это процесс в компьютерная система посредством чего записи в тайник заменяются или удаляются.

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

Явное признание недействительности

Аннулирование кеша можно использовать для толкать новый контент для клиент. Этот метод работает как альтернатива другим методам отображения нового содержимого для подключенных клиентов. Недействительность осуществляется путем изменения данных приложения, что в свою очередь отмечает информацию, полученную клиентом, как устаревшую. После того, как кеш становится недействительным, если клиент запрашивает кеш, ему доставляется новая версия.[1]

Методы

Есть три конкретных метода аннулирования кеша, но не все кеширование прокси поддерживают эти методы.

Удалять

Немедленно удаляет содержимое из кеширующего прокси. Когда клиент снова запрашивает данные, это доставлен из приложения и хранится в кеширующем прокси. Этот метод удаляет все варианты кэшированного содержимого.[1]

Обновить

Выбирает запрошенный контент из приложения, даже если кэшированный контент доступен. Контент, ранее сохраненный в кэше, заменяется новой версией из приложения. Этот метод влияет только на один вариант кэшированного содержимого.[1]

Запретить

Ссылка на кэшированный контент добавляется в черный список (или список запретов). Затем клиентские запросы проверяются по этому черному списку, и если запрос соответствует, новый контент извлекается из приложения, возвращается клиенту и добавляется в кеш.[1]

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

Альтернативы

Есть несколько альтернатив аннулированию кеша, которые по-прежнему доставляют обновленный контент клиенту. Одна из альтернатив - быстро удалить кэшированный контент, уменьшив время жизни (TTL) к очень низкому значению. Другой альтернативой является проверка кэшированного содержимого при каждом запросе. Третий вариант - не кэшировать изменчивое содержимое, запрошенное клиентом. Эти альтернативы могут вызвать проблемы, поскольку они создают высокую нагрузку на приложение из-за более частых запросов информации.[1]

Недостатки

Использование недействительности для передачи нового содержимого может быть затруднено при признании недействительности нескольких объектов. Аннулирование нескольких представлений усложняет приложение. Аннулирование кеша должно выполняться через кеширующий прокси; эти запросы могут повлиять на производительность кэширующего прокси, вызывая более медленную передачу информации клиентам.[1]

Рекомендации

  1. ^ а б c d е ж «Введение в недействительность кэша - документация FOSHttpCache». foshttpcache.readthedocs.org. Получено 2016-01-02.