1.擊穿:少量的key過期造成併發訪問資料庫
前期肯定發生了高併發
解決辦法:
百萬併發過來 需要訪問快取中k1,redis是單程序的,當發現null後,
執行setnx獲取鎖,獲鎖成功 則到db中取資料,獲鎖失敗 sleep一會兒。
2.穿透:查詢不存在的資料
解決辦法:布隆過濾器
一種寫是在client端 邏輯演算法+資料
一種是在client端存邏輯演算法 redis存資料
一種是redis整合布隆模組 redis端存邏輯演算法+資料
布隆過濾器缺點:只能增加 不能刪除
布穀鳥支援刪除
3.雪崩:大量的key同時失效,間接造成大量訪問到資料庫
針對不同情況有不同解決辦法
到某一時間點 必須過期:採用上面擊穿的解決方案;或者在業務層加邏輯判斷,某一時間點延時 即不讓業務發的請求傳送過來。(保證資料一致性)
對時間點無所謂:隨機過期時間
4.redis做分布式鎖
setnx
過期時間
多執行緒延長過期時間
redisson
應聘時面試官經常問的幾個問題
1 請你自我介紹一下自己好嗎?2 你覺得你個性上最大的優點是什麼?3 說說你最大的缺點?4 你對薪資的要求?回答樣本一 我對工資沒有硬性要求,我相信貴公司在處理我的問題上會友善合理。我注重的是找對工作機會,所以只要條件公平,我則不會計較太多。回答樣本二 我受過系統的軟體程式設計的訓練,不需要進行大量...
面試經常問的 mybatis的執行流程(比較簡潔)
mybatis的執行流程 在網找了好多,說的都很詳細,但是太多不太簡潔,看以下 就懂了 實際流程大概就是注釋的那幾句話,面試的時候就這麼說就行 1 獲取mybatis配置檔案並讀取配置 2 獲取sqlsessionfactory,並獲取實現類 defaultsqlsessionfactory 3 通...
面試中經常問到的問題
1 請你自我介紹一下你自己?謝謝 企業喜歡有禮貌的求職者。2 你覺得你個性上最大的優點是什麼?有好奇心 專注。3 說說你最大的缺點?我最大的缺點是過於追求完美 有的人以為這樣回答會顯得自己比較出色,但事實上,他已經岌岌可危了。企業喜歡求職者從自己的優點說起,中間加一些小缺點,最後再把問題轉回到優點上...