一文讲解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 进行调整。

相关推荐
瑶总迷弟1 小时前
银河麒麟 V10 ARM64 安装 Oracle 19c 静默部署操作手册
数据库·oracle
飞浪纪元[FWC–FE]2 小时前
Qt 工程创建与 CMake / qmake 构建规范
开发语言·数据库·qt
Ivanqhz2 小时前
MoE + LLM 应用
数据库·人工智能·pytorch·python·深度学习·算法·1024程序员节
我不会起名字3222 小时前
Redis pipeline 用了反而更慢:3 类误用与正确的批量姿势
redis·pipeline·lua·rtt·批量
Tsuki_tl2 小时前
【总结】Redis五大数据类型应用场景及基本命令
数据库·redis·后端·缓存·缓存中间件·redis命令·redis 五大数据类型
Gauss松鼠会2 小时前
GaussDB 整体架构解析
运维·服务器·网络·数据库·sql·架构·gaussdb
系统集成-鹰翔2 小时前
ERP对接升级提示数据库迁移失败:SQLite逐版本事务到底回滚到哪一步
javascript·数据库·经验分享·后端
西瓜拿铁好喝2 小时前
开源和闭源 AI 办公工具,分别适合谁
java·前端·数据库
代码派2 小时前
业务不停机迁移 MySQL 到 TiDB,NineData 数据增量同步实操演示
数据库·mysql·tidb·ninedata·无停机迁移·增量迁移·全量迁移
Gauss松鼠会2 小时前
GaussDB 中 gsql 与 DBeaver(JDBC)客户端工具查询时间不一致:原因、排查与处理
运维·服务器·数据库·sql·gaussdb·经验总结