Выбор ответа Middle Кеш и очереди обновлено
Redis кончилась память
Вопрос
Redis для кеша достиг maxmemory, политика вытеснения не настроена. Что будет при новых записях?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Записи получат ошибку OOM: по умолчанию noeviction. Политика по умолчанию noeviction: команды, увеличивающие память, получают ошибку OOM, а чтение работает.
Варианты ответа
- Записи получат ошибку OOM: по умолчанию
noevictionправильный ответ - Redis удалит самые старые ключи по времени записи
- Redis начнёт выгружать часть ключей на диск
- Redis упадёт по OOM и перезапустится
Разбор
Политика по умолчанию noeviction: команды, увеличивающие память, получают ошибку OOM, а чтение работает. Для кеша выставляют allkeys-lru или allkeys-lfu, чтобы Redis сам вытеснял редко используемые ключи.
- Удаление ключей это поведение LRU-политик, его нужно включить.
- Сохранение на диск (RDB, AOF) это персистентность, а не расширение памяти.
- Redis не падает от достижения лимита.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.