系列导读本篇将深入讲解 Redis 内存管理和淘汰策略优化内存使用。文章目录一、内存管理1.1 查看内存使用1.2 内存配置二、淘汰策略2.1 策略列表2.2 策略选择三、内存优化3.1 数据结构优化3.2 编码优化3.3 清理内存总结一、内存管理1.1 查看内存使用# 查看内存信息INFO memory# 关键指标used_memory: 已使用内存 used_memory_peak: 内存峰值 used_memory_rss: 系统分配内存 mem_fragmentation_ratio: 内存碎片率1.2 内存配置# redis.conf # 最大内存限制 maxmemory 2gb # 内存淘汰策略 maxmemory-policy allkeys-lru二、淘汰策略2.1 策略列表策略说明noeviction不淘汰内存满时返回错误allkeys-lru淘汰最久未使用的keyvolatile-lru淘汰设置了过期时间且最久未使用的keyallkeys-lfu淘汰使用频率最低的keyvolatile-lfu淘汰设置了过期时间且使用频率最低的keyallkeys-random随机淘汰keyvolatile-random随机淘汰设置了过期时间的keyvolatile-ttl淘汰即将过期的key2.2 策略选择缓存场景 → allkeys-lru 热点数据 → allkeys-lfu 有过期时间 → volatile-lru 不能丢数据 → noeviction三、内存优化3.1 数据结构优化# 使用Hash替代多个String# 差SET user:1001:name张三SET user:1001:age25# 好HMSET user:1001 name张三age253.2 编码优化# redis.conf # Hash优化 hash-max-ziplist-entries 512 hash-max-ziplist-value 64 # List优化 list-max-ziplist-size -2 # Set优化 set-max-intset-entries 512 # ZSet优化 zset-max-ziplist-entries 128 zset-max-ziplist-value 643.3 清理内存# 清空数据库FLUSHDB# 当前库FLUSHALL# 所有库# 异步清空FLUSHDB ASYNC FLUSHALL ASYNC总结本文我们学习了✅内存查看INFO memory✅淘汰策略8种策略选择✅内存优化数据结构、编码优化下篇预告Redis 从入门到精通十五安全配置与性能优化作者刘~浪地球系列Redis 从入门到精通十四更新时间2026-04-08