Что произойдёт с операциями записи в Redis, если его оперативная память полностью заполнится при политике noeviction?

При достижении maxmemory с noeviction Redis не вытесняет ключи и отклоняет команды, требующие дополнительной памяти. Чтение и операции освобождения памяти остаются возможными.

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

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

При достижении maxmemory с noeviction Redis не вытесняет ключи и отклоняет команды, требующие дополнительной памяти. Чтение и операции освобождения памяти остаются возможными.

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

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

Условие

Что произойдёт с операциями записи в Redis, если его оперативная память полностью заполнится при политике noeviction?

Ответ

При достижении maxmemory с noeviction Redis не вытесняет ключи и отклоняет команды, требующие дополнительной памяти. Чтение и операции освобождения памяти остаются возможными.

Не всякая команда записи одинаково обрабатывается: ограничение относится к операциям, помеченным как потенциально увеличивающие использование памяти. Приложение должно обработать ошибку OOM, а не бесконечно повторять запись. DEL и истечение TTL могут освободить место. Различайте достижение настроенного maxmemory и физическое исчерпание RAM: во втором случае возможны swap или завершение процесса ОС. Следите за используемой памятью и оставляйте запас на служебные буферы, а изменение политики выбирайте по требованиям к сохранности данных.

Источник: redis.io.

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

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

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

Подробнее