Redis 理解

一, redis 淘汰机制

一个完整的淘汰机制 应该包含’ 淘汰策略 和  删除策略

淘汰策略    最近最少使用   和 最近不经常使用

一个是通过 最后一次被访问的时间   一个是通过一段时间内的被访问次数

删除策略  实时删除   定时删除    惰性删除      最大值删除

惰性删除  当淘汰的记录达到一定量时删除

二, redis  缓存击穿 缓存穿透 缓存雪崩

击穿:热点key失效 导致大量访问直接访问数据库 造成数据库崩溃

解决方案:1 异步更新:在热点key快要过期时另起一个线程 去访问数据库 然后重新set一下热点key 刷新过期时间

穿透: 当访问redis中不存在的数据时 请求会去访问数据库 而这个字段在数据库中也没有 

1.接口验证:验证请求接口是否符合规范  不规范的请求直接拦截 

2.返回空key:当访问redis中不存在的数据时 redis自动生成一个此数据key但是value为null 并拥有极短的过期时间 

3.添加互斥锁 让抢到锁的线程才能去访问数据库查询数据 其余线程被阻塞

雪崩: 大量key同时失效 和 redis宕机 大量请求直接访问数据库

1: 随机失效时间  防止大量key同时失效

2: 搭建redis集群 即使一个redis宕机 还有高可用策略  主备切换 服务不断

三,redis 持久化 方式

1 快照 对当时内存数据全量复制存到磁盘

2 日志 对增量的命令记录到日志文件中存入磁盘

可以定时让备用节点做快照  恢复时先快照恢复  再将增量的数据通过日志恢复

四,redis 哨兵模式

哨兵也是一个redis   它可以监控集群中其他哨兵和redis的状态

并且 拥有控制redis状态的能力   通过过半原则投票决定改变状态 所以通常集群是单数

五,redis 主备模式

master 拥有对外拥有写功能

备用redis 拥有对外拥有读功能  分担主节点的压力

六,redis 主备数据同步

主节点首先发送当时快照 给备用redis  备用节点收到后会删除之前的数据 进行快照恢复  恢复完成后发送一个消息给主节点  主节点再将 增量的命令log 发送给备用节点 备用节点收到后执行log中命令。  

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值