Redis如何配置KEY的过期时间?他的实现原理是什么?
redis设置key的过期时间:1.EXPIRE。2.SETNX。
实现原理:
- 定期删除:每隔一段时间,执行一次删除过期key的操作。
- 懒汉式删除:当使用get,getset等指令去获取数据时,判断key是否过期。过期后,就先把key删除,再执行后面的操作。
Redis是将两种方式结合来使用。
- 懒汉式删除
- 定期删除:平衡控制执行效率和执行时长。遍历每个database(默认16个),检查当前库中指定个数的key(默认是20个),随机抽查这些key,如果有过期的就删除。并且程序中有一个全局变量,用来记录扫描到了哪一个数据库(database)。
Redis如何配置KEY的过期时间?他的实现原理是什么?
原文:https://www.cnblogs.com/pangqianjin/p/14616957.html