Если кэшируем несколько связанных данных (температура и новости), с какой проблемой можем столкнуться?

При раздельном кешировании связанных данных можно получить несогласованный снимок: один ключ уже обновился, другой ещё содержит старое значение. Одинаковый TTL не обеспечивает атомарное обновление.

Короткий ответ

Что ответить на собеседовании

При раздельном кешировании связанных данных можно получить несогласованный снимок: один ключ уже обновился, другой ещё содержит старое значение. Одинаковый TTL не обеспечивает атомарное обновление.

Подробный разбор

Ответ с пояснениями

При раздельном кешировании связанных данных можно получить несогласованный снимок: один ключ уже обновился, другой ещё содержит старое значение. Одинаковый TTL не обеспечивает атомарное обновление.

Сначала определите, действительно ли температура и новости должны соответствовать одному моменту или версии. Если независимы, разная свежесть может быть нормальной и требует лишь отображения времени обновления.

Для согласованного набора можно сохранять единый объект или версионированные ключи и атомарно переключать ссылку на готовую версию. При чтении нескольких ключей полезно проверять generation. Нужны правила для частично загруженной версии и сбоя обновления, а не только общий срок хранения.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее