今天做项目,遇到缓存击穿这个词,对这个词不是很理解,于是问了同事,下面纪录一下,防止下次不懂。
有些数据在缓存中没有,在数据库中也没有,这样导致每次访问缓存,都查不到,结果必须落到去查数据库,但是数据库也没有,这样就导致每次一访问这样的数据,都会既查缓存,又查数据库,大大的浪费了时间,还增加了访问压力。
通常可以用这样的方式避免这个问题,如果在数据库中不存在的话,就在缓存中做一个空标志,(比如new 一个新对象,但是这个对象的字段都是空的。)以后对这些数据的访问,直接就能在缓存中查到,就不需再查数据库了,通过查询缓存发现得到的为空的标志,就直接返回。
3665

被折叠的 条评论
为什么被折叠?



