Redis持久化
RDB(Redis DataBases):内存快照
触发RDB方式
优点
缺点
AOF(Append Only File):日志文件
AOF回写策略
优点
缺点
Redis中提供了两个命令生成RDB文件,分别是save和bgsave。
**save:**是阻塞方式的,在主进程中执行,会导致阻塞。
**bgsave:**是非阻塞方式的,创建一个子进程,专门用来写入RDB文件,避免了主线程的阻塞,该方式是RDB文件生成的默认配置。
bgsave命令执行原理
1.**手动触发:**用户执行save或者bgsave命令
格式:save <seconds> <changes>
只需要将RDB文件放在Redis的启动目录下,Redis启动时就会自动检查dump.rdb文件恢复其中的数据。
默认情况下Redis没有开启AOF方式的持久化,可以通过appendonly参数启用:appendonly yes,开启AOF方式持久化每执行一条命令,Redis就会将命令写入到aof_buff缓冲区,AOF缓存会去根据对应的策略向磁盘做同步操作。默认情况在30秒就会执行一次同步操作,为了防止缓冲区数据的丢失。
AOF持久化执行流程:
AOF保存文件:appendonly.aof
AOF机制提供了三个选择,即通过appendfsync配置三个可选项,有三种方式,默认是每秒everysec执行一次。
**appendfsync always:**同步写回,每个写命令执行完,立马同步将日志写回磁盘,保证完全持久化,最慢
**appendfsync everysec:**每秒写回:每个命令执行完,只是先把日志写到AOF文件的内存缓冲区,每隔一秒把缓冲区的数据写入磁盘
**appendfsync no:**操作系统控制写回:每个命令执行完,先把日志写到AOF文件的内存缓冲区,由操作系统决定何时从缓冲区写回此判断,性能最好,持久化没法保证
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/qq_45981295/article/details/121568018
内容来源于网络,如有侵权,请联系作者删除!