1.数据删除与淘汰策略
1.1Redis中的数据特征
删除策略就是针对已过期数据的处理策略
问题: 已过期的数据是真的就立即删除了吗?
回答: 其实也不是,会有多种删除策略,在不同的场景分情况使用不同的删除策略来进行删除数据。
Redis是一种内存级数据库,所有数据都存放在内存中,内存中的数据可以通过TTL指令获取其状态
TTL返回的值有三种情况:正数,-1,-2
- 正数:代表该数据在内存中还能存活多长时间
- -1:永久有效的数据
- -2:已经过期的数据 或被删除的数据 或未定义的数据
1.2数据删除的三种策略
- 1.定时删除
- 2.惰性删除
- 3.定期删除
定时删除策略:
创建一个定时器,当key设置有过期时间,并且过期时间到达时,由定时器立即对键的删除操作
- 优点:节约内存,到时间就删除,快速释放掉不必要的内存占用
- 缺点:CPU压力大,会影响redis服务器响应时间和指令吞吐量
- 简易理解:用处理器性能换取存储空间(拿时间换空间)
惰性删除:
据到达过期时间,不做处理,等下