快取預熱,快取穿透,快取擊穿,快取雪崩是怎麼回事?

2021-10-17 12:14:16 字數 454 閱讀 4839

快取預熱

系統啟動前,提前將相關的快取資料直接載入到快取系統;避免在使用者請求的時候,先查詢資料庫,然後再將資料快取

快取穿透

查詢乙個不存在的資料,由於快取未命中,最終去查資料庫;當高併發時,資料庫可能崩潰

解決:對查詢結果為null的資料進行快取,並設定乙個短暫過期時間;key加密,問題出現後,臨時啟動防災業務key,對key進行業務層傳輸加密服務,設定校驗程式,過來的key校驗

快取雪崩

快取中較多的key集中過期;快取未命中,向資料庫獲取資料

解決:構建多級快取架構,nginx快取+redis快取+ehcache快取;資料有效期策略調整,過期時間使用固定時間+隨機值的形式;

快取擊穿

某個key過期,該key訪問量巨大,在短時間內發起了大量對資料庫中同一資料的訪問

解決:加鎖,阻止同時查資料庫,有了結果後放入快取;後面進來的請求直接查快取

Redis筆記12 快取穿透 快取擊穿 快取雪崩

使用者想要查詢乙個資料,發現redis記憶體資料庫沒有,也就是快取沒有命中,於是向持久層資料庫查詢。發現也沒有,於是本次查詢失敗。當使用者很多的時候,快取都沒有命中,於是都去請求了持久層資料庫。這會給持久層資料庫造成很大的壓力,這時候就相當於出現了快取穿透。比如,發起乙個id 1的資料庫查詢請求。布...

Redis 熱鍵問題,快取擊穿,快取穿透,快取雪崩

1.熱鍵問題 描述 熱鍵被大量客戶端訪問,導致大量網路流量集中在一台redis伺服器上,伺服器宕機。解決方法 將熱鍵分散到不同的redis伺服器上 2.快取擊穿 描述 熱鍵被大量客戶端訪問,熱鍵如果過期,可能導致大量網路流量打到 db 伺服器上,導致資料庫伺服器宕機 解決方法 對於熱鍵,訪問之前如果...

快取穿透 快取併發 快取雪崩 快取預熱

快取穿透 快取併發和快取雪崩是常見的由高併發引起的快取問題,而快取預熱是快取雪崩的一種解決方案。快取穿透指的是併發使用大量快取中不存在的key進行查詢,由於快取無法命中,大量的查詢會穿過快取直接查詢資料庫,使得資料庫壓力太大,導致資料庫可能被拖垮。一般是受到了惡意的攻擊才會導致這種問題,所以一旦遇到...