就是将内存中的数据通过rdb/aof进行持久化写入硬盘中
rdb就是进行持久化的快照
在指定的时间间隔内,执行数据集的时间点快照。这个快照文件称为(dump.rdb)RDB文件,Redis DataBase
rdb的手动保存中都是用bgsave,不用save。在使用save时主程序会阻塞当前Redis服务器,执行期间不能处理其他命令(缓存功能直接噶了)。
bgsave会在后台异步进行快照,不阻塞,该触发方式会fork一个子进程复制持久化过程
fork是什么?fork会产生一个和父进程完全相同的子进程
rdb总结
适合灾难恢复;定时备份;对数据完整性和一致性要求不高
如果系统突然down掉,会丢失当前到最近一份快照的数据
内存数据的全量同步,如果数据量太大会导致I/O严重影响系统性能
fork也会挤占I/O和内存
aof就是把文件追加到尾
aof是把执行成功的写指令保存在文件中,文件是appendonly.aof
aof文件可读性强,如果误用了flushall在没有重写的时候可以在aof中删除最后一条信息保护数据
aof的缓存具有重写机制,
手动重写是bgrewriteaof,这个是在子线程完善,是异步的;自动重写是当达到最小允许的内存或者其二的倍数就会发生重写。重写会压缩文件的大小
在进行恢复的时候,会优先执行aof文件
标签:fork,AOF,快照,aof,rdb,Redis,RDB,重写 From: https://www.cnblogs.com/kun1790051360/p/17860096.html