【发布时间】:2021-06-21 17:36:56
【问题描述】:
背景故事:Redis 数据库的 keyspace 报告了大量过期的 key,内存使用量已达到最大值。使用此数据库的应用程序遇到(罕见的)间歇性超时,我认为(以我有限的知识)可能是因为 Redis 必须在每次创建新密钥时弹出过期的密钥。
所以我的问题是:我如何告诉 Redis 删除所有过期的密钥?
其次——是否可以使用 redis-cli 访问/查看过期的密钥?
这是我正在查看的INFO 的一部分:
maxmemory_policy:allkeys-lru
expired_keys:24326586
evicted_keys:134022997
keyspace_hits:2684031719
keyspace_misses:186380210
slave_expires_tracked_keys:0
active_defrag_key_hits:0
active_defrag_key_misses:0
db2:keys=12994468,expires=3193,avg_ttl=1891176
【问题讨论】: