目录
Redis数据淘汰策略 概论 (一)
Redis数据淘汰策略 LRU深入分析 (二)
Redis数据淘汰策略 LFU深入分析 (三)
1.前言
上篇文章我们整体上介绍了redis的淘汰策略,而其中LRU和LFU两种算法又是极其重要的,接下来我们从底层原理开始逐一揭开它们的神秘面纱!
2. LFU
2.1 LFU
LFU (least frequently used),从字面上理解是最不频繁使用的
它会按照最近的使用频率淘汰掉使用频率比较低的key,它比LRU更加精准地表示了一个key被访问的热度。
如果一个key长时间不被访问,只是刚刚偶然被用户访问了一下,那么在LRU算法下他是不容易被淘汰,因为LRU算法认为这个key是很“热”的,而LFU算法需要追踪最近一段时间的访问频率,如果某个key只是偶然被访问了一次是不足以变得很“热”的,它需要在近一段时间内被访问很多次才有机会被LFU算法判定为很“热”;
有兴趣可查看redis官方文档关于这块的介绍,