更新時間:2021-08-04 來源:黑馬程序員 瀏覽量:
(1)問題分析
考官主要考察面試者對于項目中緩存使用的能力
(2)核心答案講解
答1:
我們會先去redis中判斷數(shù)據(jù)是否存在,如果存在,則直接返回緩存好的數(shù)據(jù)。而如果不存在的話,就會去數(shù)據(jù)庫中,讀取數(shù)據(jù),并把數(shù)據(jù)緩存到Redis中。適用場合:如果數(shù)據(jù)量比較大,但不是經(jīng)常更新的情況(比如用戶排行)
答2:
只要使用了緩存就涉及到緩存同步的問題。緩存同步其實就是當(dāng)緩存的信息發(fā)生變化,也就是對后臺對緩存的數(shù)據(jù)進行增、刪、改操作后,數(shù)據(jù)庫中的數(shù)據(jù)發(fā)生了變化同時要把緩存中的數(shù)據(jù)對應(yīng)刪除即可。當(dāng)頁面再次請求數(shù)據(jù)時,緩存中不能命中就會從數(shù)據(jù)庫中查詢并且添加到緩存中,即實現(xiàn)了緩存同步。
(3)問題擴展
回顧redis雪崩和redis穿透
(4)結(jié)合項目中使用
情景一:廣告數(shù)據(jù)
情景二:做搜索的分類對應(yīng)的品牌數(shù)據(jù)、規(guī)格數(shù)據(jù)