redis内存淘汰策略及如何配置

参考:https://zhuanlan.zhihu.com/p/102513831

Redis内存淘汰策略

将Redis用作缓存时,如果内存空间用满,就会自动驱逐老的数据。

为什么要使用内存淘汰策略呢?

当海量数据涌入redis,导致redis装不下了咋办,我们需要根据redis的内存淘汰策略,淘汰一些不那么重要的key,来满足大量数据的存入。

Redis六种淘汰策略

  • noeviction:当内存使用达到阈值的时候,所有引起申请内存的命令会报错。
  • allkeys-lru:在主键空间中,优先移除最近未使用的key。(推荐)
  • volatile-lru:在设置了过期时间的键空间中,优先移除最近未使用的key。
  • allkeys-random:在主键空间中,随机移除某个key。
  • volatile-random:在设置了过期时间的键空间中,随机移除某个key。
  • volatile-ttl:在设置了过期时间的键空间中,具有更早过期时间的key优先移除。

白话文翻译

  • noeviction:当内存使用达到阈值的时候,执行命令直接报错
  • allkeys-lru:在所有的key中,优先移除最近未使用的key。(推荐)
  • volatile-lru:在设置了过期时间的键空间中,优先移除最近未使用的key。
  • allkeys-random:在所有的key中,随机移除某个key。
  • volatile-random:在设置了过期时间的键空间中,随机移除某个key。
  • volatile-ttl:在设置了过期时间的键空间中,具有更早过期时间的key优先移除。

如何配置Redis淘汰策略

    1. 找到redis.conf文件
      在这里插入图片描述
      设置Redis 内存大小的限制,我们可以设置maxmemory ,当数据达到限定大小后,会选择配置的策略淘汰数据
      比如:maxmemory 300mb。

    2. 设置内存淘汰具体使用那种策略
      在这里插入图片描述
      设置Redis的淘汰策略。比如:maxmemory-policy volatile-lru

posted @   沐春风-燕南飞  阅读(2093)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示