У этого типа схемы кэширования есть имя? - PullRequest
2 голосов
/ 16 февраля 2011

Рассмотрим основной метод кэширования: вы ищете ключ в кеше, а если его нет, вы извлекаете его из основного постоянного хранилища. Срок действия истекает, если кеш заполнен другими значениями или TTL проходит.

Теперь рассмотрим небольшую альтернативную версию кэша: вы ищете ключ, если его там нет, вы должны его получить, ничего нового здесь. Но что, если вы ищите ключ, и значение истекло из-за TTL, но вместо этого вы возвращаете это устаревшее значение и асинхронно обновляете значение, так что следующий запрос уже увидит новое значение (и TTL соответственно сбросятся)?

Есть ли у этой схемы кэширования имя? Есть ли какие-то минусы, на которые мы упускаем?

1 Ответ

1 голос
/ 17 февраля 2011

Я не знаю, как оно называется, но мы, конечно, использовали схему, в которой данные кэшируются до N минут, но через N / 2 минуты в фоновом режиме создается поток для обновления данных.

Это хорошо, если: A) вычисления дороги, и B) вы абсолютно не можете ждать новых вычислений.

Плохо, если: A) вам нужно полностью обновлятьсяинформация в любой момент.Б) расчеты очень редки.В этом случае ваши данные могут быть, скажем, устаревшими.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...