在高并发的条件下由于引入缓存但是可能会引发如下的问题,导致数据库服务器宕机,影响用户的体验.

缓存-穿透

特点: 用户高并发的环境下,访问一个数据库中不存在的数据就叫缓存穿透!!!(库中不存在,缓存中也就没有数据,缓存无效==穿透)
解决方案: 限制用户单位时间内的访问次数 , 封禁IP地址. 网关过滤.

缓存-击穿

特点: 某些高频的访问数据由于操作不当导致缓存失效.从而使得大量的用户直接访问数据库. (误操作删除了一个正在高并发访问的数据)
解决方案: 配置多级缓存

缓存-雪崩

特点: 由于redis中的高频key在同一时间内大量的失效.导致用户的请求直接访问数据库,导致宕机的风险. (flushAll,删除多个数据)
解决方案: 配置多级缓存,设定不同的超时时间.


迈克丝
85 声望5 粉丝

一步一步学技术,踏踏实实涨经验,兴趣广泛,广交好友,希望大家多多指正/批评.