一文讲解Redis的内存淘汰和过期策略

Redis 报内存不足怎么处理?

Redis 内存不足有这么几种处理方式:

  • 修改配置文件 redis.conf 的 maxmemory 参数,增加 Redis 可用内存

  • 也可以通过命令 set maxmemory 动态设置内存上限

  • 修改内存淘汰策略,及时释放内存空间

  • 使用 Redis 集群模式,进行横向扩容。

Redis key 过期策略有哪些?

Redis 的 key 过期回收策略主要有两种:惰性删除和定期删除。

当某个键被访问时,如果发现它已经过期,Redis 会立即删除该键,俗称惰性删除。但这也意味着如果一个已过期的键从未被访问,它就不会被删除,会占用额外的内存空间。

那还有一种定期删除策略,即每隔一段时间,Redis 就会随机检查一些键是否过期,如果过期就删除。这种策略可以保证过期键及时被删除,但也会增加 Redis 的 CPU 消耗。

可以通过 config get hz 命令查看 Redis 内部定时任务的频率。

二哥的 Java 进阶之路:config get hz

结果显示 hz 的值为 "10",意味着 Redis 服务器每秒执行定时任务的频率是 10 次。可以通过 CONFIG SET hz 20 进行调整。

相关推荐
Themberfue19 分钟前
SQL ②-库操作 | 数据类型
数据库·sql·mysql
li_Michael_li20 分钟前
MySQL Explain 分析 SQL 执行计划
数据库·sql·mysql
tjsoft40 分钟前
Nginx之https重定向为http
数据库
Yan-英杰1 小时前
【百日精通JAVA | SQL篇 | 第四篇】约束
java·服务器·开发语言·数据库·人工智能·sql·mysql
小小码农很少烦恼1 小时前
Issar 搜索
数据库
江沉晚呤时2 小时前
C#中观察者模式(Observer Pattern)深入解析
java·服务器·数据库
肖恩想要年薪百万2 小时前
如何在idea中快速搭建一个Spring Boot项目?
java·数据库·spring boot·后端·学习·mysql·intellij-idea
丁总学Java2 小时前
Spring Data JPA中的List底层:深入解析ArrayList的奥秘!!!
数据结构·数据库·list
江沉晚呤时2 小时前
如何深入理解C#中的备忘录模式(Memento Pattern)设计模式
运维·服务器·数据库·c#·.netcore
Kale又菜又爱玩3 小时前
深入探索Redisson:用法全解析及在微服务中的关键应用
redis·微服务·架构