Как и ленивая загрузка, запись через — еще одна стратегия кэширования, но в отличие от ленивой загрузки, она не ожидает попадания или промаха. Это прямая стратегия, в которой синхронизация между кешем и базой данных происходит, как только некоторые данные записываются в базу данных.
Это легко понять из приведенной ниже диаграммы.
Преимущества Write Through
Данные в кэше никогда не устаревают — поскольку данные в кэше обновляются каждый раз, когда они записываются в базу данных, данные в кэше всегда актуальны.
Записать штраф против чтения за штраф —
Недостатки Write Through
Отсутствующие данные — в случае раскрутки нового узла, будь то из-за сбоя узла или его масштабирования, отсутствуют данные, которые по-прежнему отсутствуют до тех пор, пока они не будут добавлены или обновлены в базе данных. Это может быть минимизировано путем реализации отложенной загрузки в сочетании с Write Through.
Отток кэша — поскольку большая часть данных никогда не читается, в кластере может быть много данных, которые никогда не читаются. Это пустая трата ресурсов. Добавляя TTL, вы можете минимизировать потерянное пространство, что мы увидим в следующей главе.