《Redis设计与实现》夯实之路(七) 第九章 数据库

《Redis设计与实现》学习笔记(七) 第九章 数据库




一. 服务器中的数据库

  • redisServer中的db数组保存着所有的数据库
  • 初始化时根据默认的dbnum=16创建16个数据库

二. 切换数据库

redisClient中的db是指向redisServer中db的一个指针,通过改变指针改变当前使用的数据库


三. 数据库键空间

  • RedisDB中的dict字典保存了所有的键值对
  • 所有的增删改查都是对dict字典的修改

四. 设置键的生存时间或过期时间

  • Expire秒,pexpire毫秒,expireat秒数时间戳,pexpireat毫秒数时间戳
  • 过期字典保存过期时间
  • Persist将键设置为永不过期

五. 过期键删除策略

  • 定时删除:用定时器定在过期时间,一过期就删除
  • 惰性删除:过期了先不管,取键时检查,过期了就删除
  • 定期删除:每隔一段时间检查,删除过期键

六. AOF,RDB和复制功能对过期键的处理

  • 执行SAVE或BGSAVE命令时会对过期键进行检查
  • 载入RDB文件时也会检查
  • AOF模式下,过期未被删除的不会产生影响
  • 被删除后,将会在AOF文件中追加一条DEL命令

七. 数据库通知

发送通知

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值