这篇文章给大家介绍redis 中怎么实现热点更新策略,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
redis过期策略采用的是定期删除+惰性删除,
定期删除指redis会定期会检查带有过期时间的key,如果key已过期则删除。但是定期检查不会检查所有的key[检查所有的key也将会是中灾难],只会随机抽查。
定期删除只会随机抽查,会有很多到期的key未清理。当这个key被查询但是已经过期,redis会删除该key并返回空
定期删除+惰性删除结合使用,就能够保证:一个key如果过期了,肯定会被删除了。
定期删除+惰性删除会遗留很多失效数据未被检查到也未被调用。这个时候内存达到阀值。redis关于采用以下机制。
noeviction:当内存使用达到阀值的时候,所有引起申请内存的命令会报错;
allkeys-lru:尝试回收,最近未使用或者使用比较少的键。(范围是:所有的键)
volatile-lru:尝试回收,最近未使用或者使用比较少的键。(范围是:设置了过期时间的键)
allkeys-random:随机移除某个key。(范围是:所有的键)
volatile-random:随机移除某个key。(范围是:设置了过期时间的键)
volatile-ttl:回收过期时间较短的key。(范围是:设置了过期时间的键)
redis的淘汰策略:默认是 noeviction
maxmemory <bytes>:为0时指使用内存不受限制
maxmemory-policy:默认noeviction
关于redis 中怎么实现热点更新策略就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。