redis超时时间查看 redis超时时间原理_内存回收

Redis有内存回收机制.

当一个key超时后,会被做标记.但不会立即自动回收.这样做的好处是,当一个key的值是一个存有百万元素的list时候,如果超时后立即回收.需要很长时间,造成卡顿.

 

Redis提供定时回收和惰性回收两种机制

  1. 定时回收:确定某个时间触发一段代码,回收超时的键值对.
  2. 惰性回收:当一个key超时后,在执行下一次get操作的时候回收

 

定时回收可以完全回收超时的键值对,但是键值对比较大的前提下,会造成数据卡顿,所以一般在没有业务的时候执行.

惰性回收,可以执行回收那个键值对.缺点是,需要执行一个莫名奇妙的get操作,而且有的时候我们并不知道那个key超时了