0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

redis的淘汰策略

科技绿洲 来源:网络整理 作者:网络整理 2023-12-04 16:23 次阅读

Redis是一种基于内存的键值存储系统,为了充分利用内存,Redis采用了一些淘汰策略来管理内存空间。淘汰策略的作用是当内存空间不足时,选择合适的数据对象进行淘汰,释放出更多的内存空间,以供后续的写入。

Redis的淘汰策略主要有以下几种:

  1. LRU(Least Recently Used,最近最少使用):
    这是Redis默认的淘汰策略。当内存空间不足时,Redis会选择最近最少使用的数据对象进行淘汰。这种策略适用于常用的数据对象频繁被访问的访问模式。Redis会根据每个数据对象的最后访问时间来选择淘汰的对象。
  2. LFU(Least Frequently Used,最不经常使用):
    这种淘汰策略根据数据对象的访问频率来进行淘汰。当内存空间不足时,Redis会选择访问频率最低的数据对象进行淘汰。这种策略适用于访问模式比较平稳的情况。
  3. Random(随机):
    这种淘汰策略是完全随机选择数据对象进行淘汰。当内存空间不足时,Redis会随机选择一个数据对象进行淘汰。这种策略简单高效,但是可能导致一些不常使用的数据对象被淘汰掉。
  4. TTL(Time To Live,存活时间):
    这种淘汰策略是根据数据对象的过期时间来进行淘汰。当内存空间不足时,Redis会选择即将过期的数据对象进行淘汰。这种策略适用于缓存类应用,可以确保缓存数据对象的及时更新。
  5. Maxmemory-policy(最大内存策略):
    Redis还提供了一种用户自定义的淘汰策略。通过配置maxmemory-policy参数,用户可以根据自己的需求选择合适的淘汰策略。例如,用户可以根据访问模式和数据对象的大小来进行淘汰,以达到最佳的性能和容量利用率。

综合来说,Redis的淘汰策略主要是针对内存空间紧张的情况下如何选择合适的数据对象进行淘汰,释放出更多的内存空间。不同的淘汰策略适用于不同的业务场景,根据业务需求进行选择配置。在实际应用中,需要根据具体的业务场景和数据访问模式选择合适的淘汰策略,以提高Redis的性能和容量利用率。同时,需要合理配置Redis的内存大小和淘汰策略参数,以充分利用内存资源,提供更好的应用性能。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 参数
    +关注

    关注

    11

    文章

    1829

    浏览量

    32194
  • 存储系统
    +关注

    关注

    2

    文章

    409

    浏览量

    40850
  • Redis
    +关注

    关注

    0

    文章

    374

    浏览量

    10871
收藏 人收藏

    评论

    相关推荐

    如何排查Redis性能问题 Redis内部实现原理解析

    作为业务开发人员,我们需要了解 Redis 的基本原理,例如各个命令执行的时间复杂度、数据过期策略、数据淘汰策略等,从而更合理地使用 Redis
    发表于 07-05 12:33 333次阅读
    如何排查<b class='flag-5'>Redis</b>性能问题 <b class='flag-5'>Redis</b>内部实现原理解析

    MySQL与Redis延迟双删策略

    背景 在当前环境下,通常我们会首选redis缓存来减轻我们数据库访问压力。但是也会遇到以下这种情况:大量用户来访问我们系统,首先会去查询缓存, 如果缓存中没有数据,则去查询数据库,然后更新数据到缓存
    的头像 发表于 09-25 14:28 907次阅读
    MySQL与<b class='flag-5'>Redis</b>延迟双删<b class='flag-5'>策略</b>

    Redis Stream应用案例

    摘要: Redis Stream Redis最新的大版本5.0已经RC1了,其中最重要的Feature莫过于Redis Stream了,关于Redis Stream的基本使用介绍和设计
    发表于 06-26 17:15

    Redis的内存淘汰机制

    redis淘汰策略
    发表于 09-27 07:55

    浅析Redis的过期机制

    Redis数据过期策略详解
    发表于 10-12 15:12

    Redis常见面试题及答案

    redis的数据类型,以及每种数据类型的使用场景,Redis 内部结构 redis的过期策略以及内存淘汰机制【~】
    的头像 发表于 12-16 11:44 2190次阅读
    <b class='flag-5'>Redis</b>常见面试题及答案

    什么是 Redis

      —   1  — 什么是 RedisRedis(REmote DIctionary Service)是一个开源的键值对数据库服务器。 Redis 更准确的描述是一个数据结构服务器。Re
    的头像 发表于 05-22 15:32 1106次阅读
    什么是 <b class='flag-5'>Redis</b>

    Redis的主从、哨兵、Redis Cluster集群

      前言 今天跟小伙伴们一起学习Redis的主从、哨兵、Redis Cluster集群。 Redis主从 Redis哨兵 Redis Clu
    的头像 发表于 06-12 14:58 823次阅读
    <b class='flag-5'>Redis</b>的主从、哨兵、<b class='flag-5'>Redis</b> Cluster集群

    Redis10大性能优化策略

    例如,我的机器配置比较低,当延迟为 2ms 时,我就认为 Redis 变慢了,但是如果你的硬件配置比较高,那么在你的运行环境下,可能延迟是 0.5ms 时就可以认为 Redis 变慢了。
    的头像 发表于 07-04 10:21 835次阅读
    <b class='flag-5'>Redis</b>10大性能优化<b class='flag-5'>策略</b>

    redis缓存满了怎么办?

    只有在 Redis 的运行内存达到了某个阀值,才会触发内存淘汰机制,这个阀值就是我们设置的最大运行内存,此值在 Redis 的配置文件中可以找到,配置项为 maxmemory。
    发表于 08-21 10:42 234次阅读
    <b class='flag-5'>redis</b>缓存满了怎么办?

    Redis 的数据清理策略

    本文整理 Redis 的数据清理策略所有代码来自 Redis version :5.0, 不同版本的 Redis 策略可能有调整
    发表于 09-19 14:24 371次阅读
    <b class='flag-5'>Redis</b> 的数据清理<b class='flag-5'>策略</b>

    Redis键的生存时间、生存策略和毁灭策略

    先来回顾一下Redis键的生存时间,过期时间的设置;然后会讲到过期键删除策略;然后会聊其他功能对过期键的处理。 2.键的生存时间 键过期时间设置通过Expire命令或者Pexpire命令,客户端可以
    的头像 发表于 10-08 14:55 482次阅读
    <b class='flag-5'>Redis</b>键的生存时间、生存<b class='flag-5'>策略</b>和毁灭<b class='flag-5'>策略</b>

    Redis的常用场景有哪些

    Redis的常用场景有哪些? 1、缓存 缓存现在几乎是所有中大型网站都在用的必杀技,合理的利用缓存不仅能够提升网站访问速度,还能大大降低数据库的压力。Redis提供了键过期功能,也提供了灵活的键淘汰
    的头像 发表于 10-09 10:44 655次阅读

    Redis的删除策略和内存淘汰机制介绍

    Redis过期键的删除策略Redis的过期删除策略就是:惰性删除和定期删除两种策略配合使用。 惰性删除:
    的头像 发表于 10-09 11:06 489次阅读

    redis的lru原理

    Redis是一种基于内存的键值数据库,它使用了LRU(Least Recently Used)算法来进行缓存的数据淘汰。LRU算法的核心思想是最近最少使用的数据将会在未来也不常用,因此应该优先
    的头像 发表于 12-05 09:56 625次阅读