在高并发场景中,后端组件(常见的是mysql)不能直接支持高并发的请求,如果把所有的请求都打到后端组件上,可能会导致服务器崩溃,影响系统稳定性,所以引入了缓存
引入缓存之前的架构
引入缓存之前的架构
引入缓存之后的架构
引入缓存之后的架构
引入缓存后,常见的问题如下:
描述:当访问一个在缓存和db中都不存在的数据时,此时缓存不起作用,大量的请求会直接访问到db,可能会把db打挂
解决方案:
描述:一个热点key,在缓存过期/失效的瞬间,可能会有大量并发的请求走到db,db访问陡增,甚至被打挂
解决方案:
描述:大量的缓存数据,在同一时间过期/失效,导致大量的请求走到db,db访问陡增,甚至被打挂
与缓存击穿的区别:缓存击穿强调的是一个key,缓存雪崩强调的是大量的key
解决方案:
| 留言与评论(共有 0 条评论) “” |