目录
Redis数据淘汰策略 概论 (一)
Redis数据淘汰策略 LRU深入分析 (二)
Redis数据淘汰策略 LFU深入分析 (三)
1.前言
作为一个高性能的内存数据库,redis内存超出物理内存限制时,内存的数据会开始和磁盘产生频繁的交换(swap);但交换会使redis的性能急剧下降,涉及到IO操作都会很慢,对于访问量比较大的redis来说,这种极慢的存取涉及会让redis变得鸡肋;
所以在生产环境中我们肯定是不允许redis出现交换行为的,为了对内存进行限制,redis提供了配置参数maxmemory来限制内存超出期望大小;
当实际内存超出maxmemory时,redis提供了几种可选策略(maxmemory-policy)来让用户根据实际业务场景决定使用哪种策略来让给redis腾出新空间以继续对外提供读写服务。
2.内存淘汰策略
redis很早之前提供了6种策略,redis4.0又提供了围绕lfu的两种策略。
- noeviction: 不会继续提供写请求(de