Какой недостаток у кеша без срока жизни и ограничения размера?

Кеш может бесконтрольно расти, сохранять устаревшие данные и навсегда повторять старую ошибку. Дедупликация одновременных запросов и долговременное кеширование требуют разных правил.

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

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

Кеш может бесконтрольно расти, сохранять устаревшие данные и навсегда повторять старую ошибку. Дедупликация одновременных запросов и долговременное кеширование требуют разных правил.

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

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

Условие

Функция загрузки пользователя кеширует Promise в глобальном Map по id навсегда. Повторные вызовы используют тот же Promise, включая rejected. Приложение долго работает в одной вкладке. Какие риски есть у этого решения?

Ответ

Кеш может бесконтрольно расти, сохранять устаревшие данные и навсегда повторять старую ошибку. Дедупликация одновременных запросов и долговременное кеширование требуют разных правил.

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

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

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

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

Подробнее