Redis中有哪些数据删除规则?

存储
Redis对数据设置数据的有效时间,数据过期以后,就需要将数据从内存中删除掉。可以按照不同的规则进行删除,这种删除规则就被称之为数据的删除策略(数据过期策略)。在Redis中提供了两种数据删除策略,惰性删除和定期删除,下面详细来看。

Redis对数据设置数据的有效时间,数据过期以后,就需要将数据从内存中删除掉。可以按照不同的规则进行删除,这种删除规则就被称之为数据的删除策略(数据过期策略)。在Redis中提供了两种数据删除策略,惰性删除和定期删除,下面详细来看。

惰性删除

惰性删除设置该key过期时间后,我们不去管它,当需要该key时,我们在检查其是否过期,如果过期,我们就删掉它,反之返回该key。

例如:

set name zhangsan10
get name//发现name过期了,直接删除key

优点 :对CPU友好,只会在使用该key时才会进行过期检查,对于很多用不到的key不用浪费时间进行过期检查。

缺点 :对内存不友好,如果一个key已经过期,但是一直没有使用,那么该key就会一直存在内存中,内存永远不会释放。

定期删除:每隔一段时间,我们就对一些key进行检查,删除里面过期的key(从一定数量的数据库中取出一定数量的随机key进行检查,并删除其中的过期key)。

定期清理有两种模式:

• SLOW模式是定时任务,执行频率默认为10hz,每次不超过25ms,以通过修改配置文件redis.conf的hz选项来调整这个次数

• FAST模式执行频率不固定,但两次间隔不低于2ms,每次耗时不超过1ms

优点:可以通过限制删除操作执行的时长和频率来减少删除操作对CPU的影响。另外定期删除,也能有效释放过期键占用的内存。

缺点:难以确定删除操作执行的时长和频率。Redis的过期删除策略:惰性删除+定期删除两种策略进行配合使用。

责任编辑:华轩 来源: 今日头条
相关推荐

2018-08-13 14:50:02

2022-09-30 10:44:47

Netty组件数据

2022-04-14 14:25:51

大数据智慧城市数据分析

2019-02-28 20:46:35

Python高级技巧编程语言

2010-07-16 09:24:59

Perl模式

2010-07-27 08:48:52

DB2数据库优化

2019-07-16 14:59:00

JVM内存区域

2022-11-28 08:02:17

DNSIP计算机

2020-03-13 09:29:27

物联网通信互联网

2024-10-25 08:30:55

NumPyPandasMatplotlib

2011-03-10 15:06:02

重复数据删除技术

2010-07-05 14:03:21

UML图

2024-01-22 00:30:00

Go编程Go 1.22

2021-01-26 15:44:50

人工智能机器学习疫情

2019-06-05 15:23:09

Redis缓存存储

2010-07-08 13:06:05

SQL Server删

2020-11-23 08:16:22

物联网

2021-02-03 10:17:55

机器人零售行业零售机器人

2014-04-14 13:05:41

RedisDBA服务器

2010-09-13 14:05:09

sql server外
点赞
收藏

51CTO技术栈公众号