首頁技術(shù)文章正文

如何用redis緩存廣告數(shù)據(jù)?【Python面試題】

更新時間:2020-11-30 來源:黑馬程序員 瀏覽量:

1577370495235_學(xué)IT就到黑馬程序員.gif


面試題:如何用redis緩存廣告數(shù)據(jù)?
(1)問題分析

考官主要考核redis的使用。


(2)核心答案講解

使用SpringDataRedis實現(xiàn)廣告數(shù)據(jù)的緩存,使用的hash類型操作,先獲取廣告列表對象,再將這個對象使用redisTemplate.boundHashOps("xxx").put("x", "xx")方法存入緩存,當廣告數(shù)據(jù)發(fā)生變更時,需要將緩存數(shù)據(jù)清除,使用redisTemplate.boundHashOps("xxx").delete("x", "xx")方法清除緩存,這樣再次查詢才能獲取最新的數(shù)據(jù),考慮到用戶可能會修改廣告的分類,需要把原分類的緩存和新分類的緩存都清除掉。


(3)問題擴展

我們目前的系統(tǒng)已經(jīng)實現(xiàn)了廣告后臺管理和廣告前臺展示,但是對于首頁每天有大量的人訪問,對數(shù)據(jù)庫造成很大的訪問壓力,甚至是癱瘓。那如何解決呢?我們通常的做法有兩種:一種是數(shù)據(jù)緩存、一種是網(wǎng)頁靜態(tài)化。


(4)結(jié)合項目中使用

現(xiàn)在我們首頁的廣告每次都是從數(shù)據(jù)庫讀取,這樣當網(wǎng)站訪問量達到高峰時段,對數(shù)據(jù)庫壓力很大,并且影響執(zhí)行效率。我們需要將這部分廣告數(shù)據(jù)緩存起來。


猜你喜歡:

如何實現(xiàn)計算機多任務(wù)運行? 

多線程爬蟲是什么?多線程爬蟲流程分析 

卡方檢驗是什么?有什么用? 

黑馬程序員Python+數(shù)據(jù)分析課程


分享到:
在線咨詢 我要報名
和我們在線交談!