redis的持久化策略,持久化就是把内存的数据持久化到磁盘上
RDB持久化,以快照的形式把进程数据持久化到硬盘上,RDB会创建一个二进制的压缩文件,文件以.RDB结尾,内部存储了各个数据库的键值对数据等信息
RDB持久化的触发方式有两种:
手动触发:通过SAVE命令或BGSAVE命令触发RDB持久化操作,创建.rdb文件
自动触发:通过配置选项,让服务器在满足指定条件时自动触发BGSAVE命令
AOF持久化:解决了redis持久化的实时性问题,通过独立日志的方式,写入命令,重启时再重新执行AOF文件中的命令来恢复数据
命令写入、文件同步,文件重写,重启加载
RDB-AOF混合持久化
redis4.0开始引入RDB-AOF混合持久化,这种模式是基于AOF持久化构建而来的,aof-use-rdb-preamble yes配置项开启AOF混合持久化,redis服务器在执行AOF重写操作时,会按照如下原则处理数据
像执行BGSAVE命令一样,根据数据库当前的状态生成相应的RDB数据,并将其写入AOF文件中
对于重写之后执行的redis命令,则以协议文本的方式追加到AOF文件的末尾,即RDB数据之后
RDB
就是用快照的方式将进程数据持久化到硬盘上,会创建二进制的.rdb文件,用来存储各种数据库的键值对信息等,rdb持久化的处罚方式有两种,手动触发,自动触发,save命令,bgsave命令,redis服务器阻塞,bgsave异步的save,会fork出一个子进程,这是会短暂阻塞,然后父进程可以去处理客户端发来的请求,不用save了
流程:如果父进程有子进程,则返回,没有父进程就阻塞fork出子进程,父进程响应,创建.rdb文件,存储父进程的内存数据,通知父进程,用新的文件替换旧的.rdb文件
aof
以独立日志的方式,将命令写入,文件同步,文件重写,重启加载,
RDB持久化,以快照的形式把进程数据持久化到硬盘上,RDB会创建一个二进制的压缩文件,文件以.RDB结尾,内部存储了各个数据库的键值对数据等信息
RDB持久化的触发方式有两种:
手动触发:通过SAVE命令或BGSAVE命令触发RDB持久化操作,创建.rdb文件
自动触发:通过配置选项,让服务器在满足指定条件时自动触发BGSAVE命令
AOF持久化:解决了redis持久化的实时性问题,通过独立日志的方式,写入命令,重启时再重新执行AOF文件中的命令来恢复数据
命令写入、文件同步,文件重写,重启加载
RDB-AOF混合持久化
redis4.0开始引入RDB-AOF混合持久化,这种模式是基于AOF持久化构建而来的,aof-use-rdb-preamble yes配置项开启AOF混合持久化,redis服务器在执行AOF重写操作时,会按照如下原则处理数据
像执行BGSAVE命令一样,根据数据库当前的状态生成相应的RDB数据,并将其写入AOF文件中
对于重写之后执行的redis命令,则以协议文本的方式追加到AOF文件的末尾,即RDB数据之后
RDB
就是用快照的方式将进程数据持久化到硬盘上,会创建二进制的.rdb文件,用来存储各种数据库的键值对信息等,rdb持久化的处罚方式有两种,手动触发,自动触发,save命令,bgsave命令,redis服务器阻塞,bgsave异步的save,会fork出一个子进程,这是会短暂阻塞,然后父进程可以去处理客户端发来的请求,不用save了
流程:如果父进程有子进程,则返回,没有父进程就阻塞fork出子进程,父进程响应,创建.rdb文件,存储父进程的内存数据,通知父进程,用新的文件替换旧的.rdb文件
aof
以独立日志的方式,将命令写入,文件同步,文件重写,重启加载,
全部评论
相关推荐
04-29 11:59
长沙学院 Web前端 紫色心情:第二页的内容感觉没啥用,要不都删了吧,有四六级把四六级写上,简历写一页就好了。项目感觉写的很好耶,要不再压缩压缩,突出亮点。还有项目放上面,专业技能放下面好一些。
点赞 评论 收藏
分享
给个offer吧😭...:现在27都结束了,28都开始了。还要1k人啊。更别说你这个bg,现在92都不一定随便进1k人的(除了外包)。只能和我一样海投了,社招也投
点赞 评论 收藏
分享
