Ctrl K
Middle · Теория

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

~4 мин голосом

Как подойти

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

Встречал этот вопрос на настоящем собесе?
Ответов0
Средний балл—
Сильных—
Тренировали0
Темы
Где спрашивают
Похожие вопросыНапишите функцию memoizeAsync. Она принимает асинхронную функцию от строкового ключа и время жизни кэша в миллисекундах и возвращает обёртку: повторный вызов с тем же ключом не ходит в сеть, параллельные вызовы делят один запрос, а ошибки не кэшируются. SeniorВы добавили кеш перед базой данных для карточек товаров, и пользователи начали жаловаться, что видят старые цены. Как устроить кеширование, чтобы этого избежать? MiddleСпроектируйте сервис коротких ссылок: пользователь отдаёт длинный URL и получает короткий, а переход по короткой ссылке перенаправляет на оригинал. MiddleЗачем бэкенду кеш, и какие проблемы появляются, когда вы его добавляете? JuniorВы поставили кеш перед тяжёлым запросом к базе. Какие проблемы с этим кешем вы ожидаете на большой нагрузке и как будете их решать? Senior

Ответь голосом

Интервьюер задаст этот вопрос и послушает. Думай вслух, проси подсказку, если нужно. Закончил — пауза или «Я ответил», через минуту здесь балл и какие пункты закрыты.

Войти, чтобы ответить

Лучше в наушниках · ~4 мин