redis的基础知识

redis常见的基本类型:

   字符串,list,set,sortset,hash

redis里面数据结构

sds(字符串的实现,定义字符数组,等长扩展),双端链表(list的内部实现),字典(为每个key分配一个空间),压缩表,跳跃表

 

redis常见异常

缓存穿透:查询不存在的值(可以做程序过滤)

缓存雪崩:大量的key同时过期(加时间的随机因子,热度大的因子,热度小的数据因子小)

缓存预热:上线前的工作

缓存降级:缓存失效或者缓存服务挂掉直接访问内存中的默认数据

 

分布式锁

解决重复下单和超售的情况

分布式自增id:increment方法

redis集群方式

  主从模式:多份数据,主节点容易出现单点故障

  哨兵模式:心跳检测和选举机制,不支持在线扩容,管理复杂

  cluster集群模式:无中心结构,每个redis都映射到不同的slot上,彼此互联,共享数据,半数检测节点故障则判断节点失效。在线删除节点和扩展节点非常容易

 redis的持久化

   RDB持久化:定时做快照保存在磁盘中。恢复快,但是实时性不好,适合全量复制和备份

   AOF持久化:redis操作日志追加方式写入文件。文件很大读取恢复慢,但是及时性很好

redis的缓存失效策略

  定时删除策略:在设置key的过期时间时,为该key创建一个定时器,让定时器在key的过期时间来临,对key删除。内存能快速释放,但是key过多执行定时器会占用很多cpu时间

  惰性删除策略:key过期不删除,每次获取key去检查是否过期,若过期则删除,返回null。cpu占用少,但是key长时间不获取容易造成内存泄漏

  定期删除策略:每隔一段时间执行一次检查去删除过期的key。综合前两者,适中

 

  

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值