Назад | Перейти на главную страницу

Должен ли я использовать vm или установить maxmemory с Redis 2.4

В Redis 2.4 то vm-enabled no является значением по умолчанию, поэтому я использую redis в качестве базы данных (а не кеша), и, возможно, иногда размер базы данных превышает размер памяти, следует ли мне ее включить?

Или я должен maxmemory чтобы предотвратить потерю данных?

http://redis.io/topics/faq

Что произойдет, если Redis исчерпает память?

В современных операционных системах функция malloc (), возвращающая NULL, не является обычным явлением, обычно сервер начинает подкачку и производительность Redis ухудшается, поэтому вы, вероятно, заметите, что что-то не так. Команда INFO сообщит объем памяти, который использует Redis, чтобы вы могли писать сценарии, которые отслеживают ваши серверы Redis, проверяя наличие критических условий. В качестве альтернативы можно использовать параметр «maxmemory» в файле конфигурации, чтобы ограничить объем памяти, который может использовать Redis. Если этот предел достигнут, Redis начнет отвечать с ошибкой для записи команд (но продолжит принимать команды только для чтения), или вы можете настроить его для удаления ключей при достижении максимального ограничения памяти в случае, если вы используете Redis для кеширования.

Ничего не делай ...? В худшем случае вы получите серьезную деградацию производительности от подкачки, но это все? В любом случае у вас есть обработка ошибок в вашем приложении, не так ли?