缓存淘汰策略之LRU

Posted amiezhang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了缓存淘汰策略之LRU相关的知识,希望对你有一定的参考价值。

LRU(Least recently used,最近最少使用)算法根据数据的历史访问记录来进行淘汰数据,其核心思想是“如果数据最近被访问过,那么将来被访问的几率也更高”。

技术分享图片

1. 新数据插入到链表头部;

2. 每当缓存命中(即缓存数据被访问),则将数据移到链表头部;

3. 当链表满的时候,将链表尾部的数据丢弃。

 

Java中可以使用LinkHashMap去实现LRU。

以上是关于缓存淘汰策略之LRU的主要内容,如果未能解决你的问题,请参考以下文章

数据结构:缓存淘汰策略

Redis的缓存淘汰策略LRU与LFU

双链表实现LRU缓存淘汰策略

从源码出发,分析LRU缓存淘汰策略的实现!

06 | 链表(上):如何实现LRU缓存淘汰算法?

REDIS16_LRU算法概述查看默认内存默认是如何删除数据缓存淘汰策略