网站建设行业咨讯文章,wordpress返回仪表盘,网站建设与管理实践心得,公司网站用wordpress缓存中存放的大多都是热点数据#xff0c;目的就是从缓存中获取数据#xff0c;而不用直接访问数据库#xff0c;从而提高查询效率 缓存雪崩
概念
指缓存在同一时间大面积失效#xff0c;后面的请求直接访问数据库#xff0c;导致数据库短时间内压力过大而崩溃#xff… 缓存中存放的大多都是热点数据目的就是从缓存中获取数据而不用直接访问数据库从而提高查询效率 缓存雪崩
概念
指缓存在同一时间大面积失效后面的请求直接访问数据库导致数据库短时间内压力过大而崩溃缓存无数据数据库有数据
解决方案
设置过期时间时增加一点随机值防止大量缓存数据同时过期缓存预热程序刚部署的时候缓存中是没有数据的可以写个接口在程序启动的时候把数据放入缓存使用锁排队请求给每一个缓存数据增加相应的缓存标记记录缓存是否失效如果缓存失效则更新不推荐耗费性能定时更新缓存不推荐耗费性能
缓存穿透
概念
指缓存和数据库中都没有请求的数据所以每次请求也直接访问数据库导致数据库短时间内压力过大而崩溃缓存无数据数据库也无数据
解决方案
使用布隆过滤器拦截不存在的 key记录请求的 key将 null 值存入缓存针对暴力请求少数 key 的情况可以使用此方法但当黑客请求大量的无效 key 时将会占用大量内存此时不太推荐请求校验造成缓存穿透的场景之一是黑客攻击可增加用户校验、参数校验等
缓存击穿
概念
和缓存雪崩类似缓存雪崩是大面积缓存失效而缓存击穿是某一个热点 key 突然失效高并发导致数据库短时间内压力过大而崩溃缓存中无某条数据数据库中有此数据
解决方案
设置热点 kye 不过期使用锁排队请求