您的位置:首页 > 数据库 > Redis

【案例】redis-server 大量key过期不释放空间的

2019-08-30 22:12 941 查看

环境: 某个redis集群(redis4.0.11的主从环境)

背景:这个redis集群开发有大量的key的写入和过期,导致内存急剧上涨。


使用 rdb工具 (git地址:https://github.com/sripathikrishnan/redis-rdb-tools) 分析下rdb文件后,发现内存中有很多的key,过期时间早到了,但是实际上还存在。原因: 因为redis的key清理策略是懒惰删除(lazy free),我们可以尝试调大,这样每秒钟执行的redis的内部cronjob次数将增大,也就可以加快key的淘汰。


操作步骤:

1、config get hz   看到当前redis-server 默认值是10 


2、config set hz 50    我们这里将hz设置为50,然后观察段时间看看(注意hz的设置值可以以10为步长逐步增加,但是一般不要超过100)


下面 2张图,是我从监控上截取的。可以看到 设置后迅速有大量的key被淘汰了。




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: