Redis концепция: в памяти или БД

redis dump.rdb

Redis концепция: в памяти или БД

На основе http://redis.io/topics/faq

Redis - это база данных в памяти, но постоянная на диске.

redis может хранить ключ/значение в памяти или на диске

в зависимости от того, как вы его настроите, redis может периодически создавать резервные копии существующего состояния на диск, но в остальном все находится в памяти

Redis будет атомарно делать снимок состояния своей памяти на диск, если так настроено. См. эту часть документации для получения дополнительной информации:

http://redis.io/topics/persistence 

Таким образом, вы можете иметь различные уровни долговечности. 

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

Snapshotting

По умолчанию, redis сохраняет данные азы на диск в файл dump.rdb.

Можно настроить сохранение каждые N секунд или при изменении M ключей.

Например, вручную вызвать команду save:

save 60 1000

По этой конфигурации redis будет автоматически делать дамп базы из RAM на диск каждые 60 секунд или если более 1000 ключей изменились.

Не рекомендуется в продуктовой среде использовать синхронное сохранение базы командой save, т.к. это будет “замораживать” работу клиентов.

Для этого есть команда bgsave, которая все делает в асинхронном режиме.