【redis】RBD-内存快照

    本文以收录专栏 redis核心技术

前言

本专栏为了帮助大家更好的了解学习redis,同时也是自己记录学习redis的内容,包含了大部分的redis核心技术,分布式锁,主从复制等

目录

专题四-RBD-内存快照

Redis4.0的内存记录


专题四-RBD-内存快照

类似与照片,记录内存中数据在某一时刻的状态。

对哪些数据做快照?

全量快照(为了保证数据的可靠性)

生成RDB文件的两个命令:

save:在主线程中执行,会导致阻塞

bgsave:创建一个子线程,专门用于写入RDB文件,避免主线程的阻塞(默认配置)

做快照时,数据还能被增删改吗?redis是否被阻塞。

redis借助操作系统提供的写时复制技术(Copy-On-Write,COW),在执行快照的同时,正常处理写操作。

如果主线程要修改一块数据,这块数据就会被复制一份,生成该数据的副本。然后bgsave子进程把这个副本数据写入RDB文件。

多久做一次快照?

快照间隔越小,数据保存越完整,但是会有这俩个方面的问题:

  1. 频繁写入磁盘,会给磁盘很大压力
  2. bgsave子进程通过fork操作从主进程创建出来,fork这个过程会阻塞主线程。

为了解决这个问题,可以使用增量快照,只需要记住哪些数据被修改了

Redis4.0的内存记录

混合使用AOF日志和内存快照的方法,在两次快照之间,使用AOF日志记录这期间所有的命令操作

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值