set ex 为字符串独有
以前只有方案2,会出现设置值了,但是过期时间没有设置的情况(因为网络丢包等)
调用时删除
定期删除伪代码:
两个思想:
1、随机抽样
2、删除数量大于某一个数据时,认为还有可删除的,继续删除(while);但是到一定时间,因为单进程单线程,又会终止删除操作(time_is_limit)
第三种辅助删除方法:
当突然数据量大增的时候,前面删除机制来不及删除
默认配置中备注了,需要手动打开
可以删除没有配置到期时间的key
random 随机删除效率高
lru最近最少使用原则算法:
一个容器中存放数据,当某个数据最近使用后,调换位置放到最上面
永远最近使用的在最上面,最近没使用的在最下面!!!
黄色区域数据相较于其他区域数据很少使用,删除黄色区域数据