redis(6)

哨兵模式:

哨兵:一台redis服务器,不保存数据
目的:监控master、slave运行情况

阶段一:监控阶段:

用于同步各个节点的状态信息,获取哨兵和master、slave信息和状态。

阶段二:通知阶段:

哨兵通知master、slave

阶段三:故障转移
1.哨兵查看master未回应,标记为SRI_S_DOWN,其他slave共享结果,未回应,也进行标记
2.哨兵派一个去通知slave:哨兵互相投票,谁先收到谁的,就投谁,票数都未过半,再来一轮
3.剔除slave:不在线、反应慢、断开时间太长。接下来是优先选择的:优先级、偏移量、runid
4.新晋master昭告天下。

集群模式:

作用: 分散单台服务器的访问压力,实现负载均衡
 分散单台服务器的存储压力,实现可扩展性
 降低单台服务器宕机带来的业务灾难

企业问题:

缓存预热就是系统启动前,提前将相关的缓存数据直接加载到缓存系统。避免在用户请求的时候,先查询数据库,然后再将数据缓存的问题!用户直接查询事先被预热的缓存数据!

缓存雪崩:
现象:
原因:在较短时间内,大量的key集中过期。
解决方案:
1.小道:调整数据有效期。
             将超热key变为永久key
2.大道:构建多级缓存nginx、redis、ehcache缓存
             优化MySQL耗时验用的业务
             服务降级

缓存击穿:
原因:单个数据访问量太大,但是数据请求未命中,key过期,形成大量的数据库统一数据的访问
解决:预先设定过期时间,

            二级缓存

缓存穿透:(其实就是访问了不存在的数据)
原因:获取的数据不在reids,同时redis未保存为null,数据库中也未找到。
解决:对查询为null的结果缓存
          白名单策略:预热各种数据与bitmaps中,id作为偏移量,正常数据放行,拦截不正常

           实时监控redis命中率,非活动3-5倍,超出5倍重点监测。活动10-50倍,超过50倍重点监测,然后使用黑名单防控。黑白名单都对整体系统有压力,警报解除后尽快移除。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值