手动保存
rdb持久化有两个命令,save和bgsave,save是线程阻塞的,当执行save的时候,服务器不能执行其他命令,bgsave非阻塞的,它会生成一个子进程,由它去执行创建rdb文件
在执bgsave期间,如果执行save,bgsave或者bgrewriteaof命令,save和bgsave会被拒绝,bgrewriteaof会等到bgsave执行结束之后再去执行。如果bgrewriteaof命令正在执行,那么客户端发送的bgsave命令会被拒绝。
自动间隔保存
可以通过配置文件进行设置,默认是
save 900 1
save 300 10
save 60 10000
分别代表900秒内至少执行一次修改,300秒内至少执行10次修改,60秒内至少执行10000次修改
保存周期
redis服务器的周期性函数serverCron默认每隔100毫秒就会执行一次,其中也包括对save的保存条件设置进行检查,如果符合条件,则执行bgsave命令