Redis进阶知识一览

🚀 优质资源分享 🚀

学习路线指引(点击解锁) 知识定位 人群定位
🧡 Python实战微信订餐小程序 🧡 进阶级 本课程是python flask+微信小程序的完美结合,从项目搭建到腾讯云部署上线,打造一个全栈订餐系统。
💛Python量化交易实战💛 入门级 手把手带你打造一个易扩展、更安全、效率更高的量化交易系统

Redis的持久化机制

RDB: Redis DataBase

  1. 什么是RDB
    RDB∶每隔一段时间,把内存中的数据写入磁盘的临时文件,作为快照,恢复的时候把快照文件读进内存。如果宕机重启,那么内存里的数据肯定会没有的,那么再次启动redis后,则会恢复。

  2. 备份与恢复
    内存备份–>磁盘临时文件
    临时文件–>恢复到内存

  3. RDB优劣势

    • 优势
      1. 每隔一段时间备份,全量备份
      2. 灾备简单,可以远程传输
      3. 子进程备份的时候,主进程不会有任何io操作(不会有写入修改或删除),保证备份数据的的完整性
      4. 相对AOF来说,当有更大文件的时候可以快速重启恢复
    • 劣势
      1. 发生故障时,有可能会丢失最后一次的备份数据
      2. 子进程所占用的内存比会和父进程一模一样,这会造成CPU负担
      3. 由于定时全量备份是重量级操作,所以对于实时备份,就无法处理了。
  4. RDB的配置

    1. 保存位置,可以在redis.conf自定义∶/user/local/redis/working/dump.rdb
    2. 保存机制∶
save 900 1       # 如果1个缓存更新,则15分钟后备份
save 300 10      # 如果10个缓存更新,则5分钟后备份
save 60 10000    # 如果10000个缓存更新,则1分钟后备份

  1. stop-writes-on-bgsave-error
    • yes∶如果save过程出错,则停止写操作
    • no∶ 可能造成数据不一致
  2. rdbcompression
    • yes∶开启rdb压缩模式
    • no∶关闭,会节约cpu损耗,但是文件会大,道理同nginx
  3. rdbchecksum
    • yes∶使用CRC64算法校验对rdb进行数据校验,有10%性能损耗
    • no∶不校验

总结
RDB适合大量数据的恢复,但是数据的完整性和一致性可能会不足

AOF: Append Only File

RDB会丢失最后一次备份的rdb文件,但是其实也无所谓,其实也可以忽略不计,毕竟是缓存,丢了就丢了,但是如果追求数据的完整性,那就的考虑使用AOF了。
AOF特点

  1. 以日志的形式来记录用户请求的写操作。读操作不会记录,因为写操作才会存存储。
  2. 文件以追加的形式而不是修改的形式。
  3. redis的aof恢复其实就是把追加的文件从开始到结尾读取执行写操作。

优势

  1. AOF更加耐用,可以以秒级别为单位备份,如果发生问题,也只会丢失最后一
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值