解读Redis内存

解读Redis内存

Redis缓存的使用极大地提升了应用程序的性能和效率,特别是查询方面。但是同时带来了一些问题

。其中最要害的就是数据的一致性问题,因为一致性的要求很高,因此就不能很友好的使用缓存了

1. 缓存穿透

就是查询一个数据库不一定存在的数据,正常使用缓存是先在缓存中进行查询,如果key已经不存在或者已经过期,会在数据库中进行查询,并把查询的结果放进缓存,如果查询对象为空,就不会存入缓存。

如果大量的查询不存在,或者恶意的查询攻击导致数据库压力过大,甚至瘫痪。

查询了不存在的查询

2. 缓存雪崩

指在某一段时间内缓存集中的过期或失效,产生的原因之一是刚存入到缓存中的数据马上被进行了淘汰,

下次在访问压力都会着落在数据库,因此会给数据库产生一个压力波峰。

解决此问题就是给热门和冷门查询给予不同的缓存时间

集中过期也还好,不算太可怕,致命的是某个缓存服务器的节点当机或者断网,这样对数据库的压力是不可预知的。

数据在缓存中大量的失效

3.缓存击穿

是指一个key非常的热点,在不停的扛着大并发,当这个key在失效的瞬间持续的查询就会导缓存击穿,直接请求数据库,导致数据库的压力过大。

热点查询

4.缓存倾斜

就是查询集中到了某个节点,某个节点的qps过大,导致数据库压力过大,有可能会拖垮整个服务。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值