08 删除策略

删除策略

Redis中的数据特征

  • Redis是一种内存级数据库,所有数据均存放在内存中,内存中的数据可以通过TTL指令获取其状态
    • XX :具有时效性的数据
    • -1 :永久有效的数据
    • -2 :已经过期的数据 或 被删除的数据 或 未定义的数据

数据删除策略

  1. 定时删除
  2. 惰性删除
  3. 定期删除

数据删除策略的目标**
在内存占用与CPU占用之间寻找一种平衡,顾此失彼都会造成整体redis性能的下降,甚至引发服务器宕机或内存泄露


定期删除

  • 周期性轮询redis库中的时效性数据,采用随机抽取的策略,利用过期数据占比的方式控制删除频度
  • 特点1:CPU性能占用设置有峰值,检测频度可自定义设置
  • 特点2:内存压力不是很大,长期占用内存的冷数据会被持续清理
  • 总结:周期性抽查存储空间(随机抽查,重点抽查)

删除策略比对

  1. 定时删除
    • 节约内存,无占用
    • 不分时段占用CPU资源,频度高
    • 拿时间换空间
  2. 惰性删除
    • 内存占用严重
    • 延时执行,CPU利用率高
    • 拿空间换时间
  3. 定期删除
  • 内存定期随机清理
  • 每秒花费固定的CPU资源维护内存
  • 随机抽查,重点抽查
posted @ 2021-11-02 16:02  flypiggg  阅读(47)  评论(0)    收藏  举报