目录
redis查看数据过期时间ttl
- 返回-1:没有设置过期时间
- 返回-2:已经过期,或者不存在的key,或者已经被删除的key
- xxx:具体剩余有效时间
数据删除策略
redis中,并不是数据已过期,就被真正地从内存中删除。因为如果每一个数据过期,都进行删除,会占用cpu时钟,影响性能。
具体的数据删除策略有以下三种:
- 定时删除
创建一个定时器,当key设置有过期时间,且过期时间到达时,由定时器任务立即执行对键的删除操作
优点:节约内存,到时就删除,快速释放掉不必要的内存占用
缺点:CPU压力很大,无论CPU此时负载量多高,均占用CPU,会影响redis服务器响应时间和指令吞吐量
总结:拿时间换空间
- 惰性删除
redis访问数据的命令,代码中均会调用expireIfNeeded(&#