缓存穿透
缓存穿透
目前我理解的缓存穿透就是缓存无法传入null值而导致频繁查询数据库。
我们模拟查找一个id为3不存在的书,首先是在缓存中查不到为null,然后去数据库也查不到,而Set又不允许存null值,所以将一直去数据库查找
如何解决:
把查不到的null值也存入缓存即可,而GetOrCreateAsync()方法则会把null值也当成合法的缓存值
目前我理解的缓存穿透就是缓存无法传入null值而导致频繁查询数据库。
我们模拟查找一个id为3不存在的书,首先是在缓存中查不到为null,然后去数据库也查不到,而Set又不允许存null值,所以将一直去数据库查找
如何解决:
把查不到的null值也存入缓存即可,而GetOrCreateAsync()方法则会把null值也当成合法的缓存值