课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
我们在前几期的文章中给大家简单介绍了缓存的异常问题等内容,而今天我们就再来了解一下,缓存污染的原因与淘汰策略。
缓存污染,指留存在缓存中的数据,实际不会被再次访问了,但又占据了缓存空间。
要解决缓存污染的关键点是能识别出只访问一次或者访问次数很少的数据。
从能否解决缓存污染这一维度来分析Redis的8种缓存淘汰策略:
noeviction策略:不会淘汰数据,解决不了。
volatile-ttl策略:给数据设置合理的过期时间。当缓存写满时,会淘汰剩余存活时间短的数据,避免滞留在缓存中,造成污染。
volatile-random策略:随机选择数据,无法把不再访问的数据筛选出来,会造成缓存污染。
volatile-lru策略:LRU策略只考虑数据的访问时效,对只访问一次的数据,不能很快筛选出来。
volatile-lfu策略:LFU策略在LRU策略基础上进行了优化,筛选数据时优先筛选并淘汰访问次数少的数据。
allkeys-random策略:随机选择数据,无法把不再访问的数据筛选出来,会造成缓存污染。
allkeys-lru策略:LRU策略只考虑数据的访问时效,对只访问一次的数据,不能很快筛选出来。
allkeys-lfu策略:LFU策略在LRU策略基础上进行了优化,筛选数据时优先筛选并淘汰访问次数少的数据。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请在707945861群中学习了解。