Skip to content
5 / 12

Персистентность Redis: RDB, AOF и что именно теряется при падении?

RDB — снимок всего набора данных на диск по расписанию: компактный файл, быстрый рестарт, но при падении теряется всё, что произошло после последнего снимка (обычно минуты). AOF — журнал команд записи: при appendfsync everysec теряется около секунды, при always — практически ничего ценой заметного падения скорости записи. Их можно и нужно комбинировать: AOF для минимальной потери, RDB для быстрых бэкапов и восстановления. Ключевая деталь, которую часто упускают: снимок делается через fork, а копирование страниц при записи означает, что в момент сохранения потребление памяти может вырасти почти вдвое — на инстансах с почти заполненной памятью это приводит к падению. Вторая деталь: репликация не является бэкапом — FLUSHALL и ошибочная перезапись доедут до реплики мгновенно, а вот AOF-файл с журналом позволит восстановиться на точку до ошибки.

Персистентность Redis: RDB, AOF и что именно теряется при падении? | JScriptiser