7-Redis架构设计到使用场景-持久化机制、缓存失效策略、缓存命中率

9 篇文章 0 订阅
本文深入探讨了Redis的持久化机制,包括RDB和AOF两种方式,分析了它们的优缺点。同时,介绍了Redis的缓存失效策略,如定时删除、惰性删除和定期删除,并提出了提高缓存命中率的方法。此外,还讨论了缓存穿透、缓存雪崩和缓存预热等问题。
摘要由CSDN通过智能技术生成

专栏目录

1-Redis架构设计到使用场景-四种部署运行模式(上)
2-Redis架构设计到使用场景-四种部署运行模式(下)
3-Redis架构设计到使用场景-主从集群和分片集群
4-Redis架构设计到使用场景-string、list、set、zset、hash使用场景
4-Redis架构设计到使用场景-Redis数据结构与使用场景
5-Redis架构设计到使用场景-Redis请求执行过程
6-Redis架构设计到使用场景-存储原理-数据类型底层结构
7-Redis架构设计到使用场景-持久化机制、缓存失效策略、缓存命中率
8-Redis架构设计到使用场景-缓存穿透、缓存雪崩、缓存预热、缓存降级

持久化机制**

Redis提供两种持久化方式。

  1. RDB持久化:将Reids在内存中的数据定时dump到磁盘上的rdb文件
  2. AOF(Append Only File)持久化:将Redis的操作日志以追加的方式写入文件,通过操作还原数据

RDB持久化,在指定的时间间隔内将内存中的数据集快照写入磁盘,实际操作过程是fork一个子进程,先将数据集写入临时文件,写入成功后,再替换之前的文件,用二进制压缩存储。

在这里插入图片描述

AOF持久化,以日志的形式记录服务器所处理的每一个写、删操作,查询操作不会记录,以文本的方式记录。

在这里插入图片描述

RDB优点

​ RDB是紧凑的二进制文件,适合备份,全量复制等场景

​ RDB恢复数据远快于AOF

RDB缺点

​ RDB无法实现实时或者秒级持久化

​ 新老版本无法兼容RDB格式

AOF优点

​ 可以更好地保护数据不丢失

​ appen-only模式写入性能比较高

​ 适合做灾难性的误删除紧急恢复

AOF缺点

​ 对于同一份文件,AOF文件要比RDB快照大

​ AOF开启后,写的QPS会有所影响,相对于RDB来说写QPS要下降

​ 数据库恢复比较慢,不合适做冷备

对于缓存数据存储敏感的场景,一般通过两种方式配合进行备份。

Redis缓存失效策略

1、定时删除策略

在设置key的过期时间的同时,为该key创建一个定时器,让定时器在key的过期时间来临时,对key进行删除。

  • 优点:保证内存尽快释放
  • 缺点:若key过多,删除这些key会占用很多CPU时间,而且每个key创建一个定时器,性能影响严重

2、惰性删除策略

key过期的时候不删除,每次从数据库获取key的时候去检查是否过期,若过期,则删除,返回null。

  • 优点:CPU时间占用比较少
  • 缺点:若key很长时间没有被获取,将不会被删除,可能造成内存泄露

3、定期删除策略

每隔一段时间执行一次删除(在redis.conf配置文件设置,1s刷新的频率)过期key操作。

  • 优点:可以控制删除操作的时长和频率,来减少CPU时间占用,可以避免惰性删除时候内存泄漏的问题
  • 缺点:对内存友好方面,不如定时策略;对CPU友好方面,不如惰性策略

Redis一般采用:惰性策略和定期策略两个相结合。

缓存命中率

  • 命中:可以直接通过缓存获取到需要的数据

  • 未命中:无法直接通过缓存获取到想要的数据,需要再次查询数据库或者执行其它的操作

    • 原因可能是由于缓存中根本不存在,或者缓存已经过期

命中率越高表示使用缓存作用越好,性能越高(响应时间越短、吞吐量越高),并发能力也越好。利用预加载(预热)、扩容、优化缓存粒度、更新缓存等手段来提高命中率。

专栏目录

1-Redis架构设计到使用场景-四种部署运行模式(上)
2-Redis架构设计到使用场景-四种部署运行模式(下)
3-Redis架构设计到使用场景-主从集群和分片集群
4-Redis架构设计到使用场景-string、list、set、zset、hash使用场景
4-Redis架构设计到使用场景-Redis数据结构与使用场景
5-Redis架构设计到使用场景-Redis请求执行过程
6-Redis架构设计到使用场景-存储原理-数据类型底层结构
7-Redis架构设计到使用场景-持久化机制、缓存失效策略、缓存命中率
8-Redis架构设计到使用场景-缓存穿透、缓存雪崩、缓存预热、缓存降级

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xianghan收藏册

极简精品作,一分也是一份鼓励哦

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值