redis缓存穿透-解决方案
生活随笔
收集整理的這篇文章主要介紹了
redis缓存穿透-解决方案
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?
上面的解決方案個人覺得時有誤的,因為就算緩存了value的null值,后面的接口請求還是會判斷走數據庫,所以看解決方案二
?
解決方案二:
https://blog.csdn.net/muyi_amen/article/details/80229647? ?參考了博客
對于數據庫中不存在的key,數據庫查詢的值為空,也將key對應的value緩存到redis上。
查詢數據庫前,到redis上判斷key是否存在,如果存在,直接返回value,不管是否為空,這樣就不會再去查數據庫,達到了緩解數據庫的作用。
redisTemplate.opsForValue().set("ff", null);System.out.println(redisTemplate.opsForValue().get("ff"));if(redisTemplate.hasKey("ff")){System.out.println("命中");System.out.println(redisTemplate.opsForValue().get("ff"));return;//這樣就不會再去訪問數據庫了。}System.out.println("=================未命中");
轉載于:https://www.cnblogs.com/Andrew520/p/10968428.html
總結
以上是生活随笔為你收集整理的redis缓存穿透-解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 同事说他的应用起不来了,因为我的代码里面
- 下一篇: Django,Ajax,文件上传,aja