快取(穿透,擊穿,雪崩)說明及解決方案

2021-10-14 16:40:02 字數 300 閱讀 7757

1,快取穿透: 快取中沒有對應資料,且資料庫也沒有對應資料,並使用者頻繁訪問如(id=-1)導致資料庫壓力過大(考慮攻擊者)

解決方案:加以(介面層,使用者,id)等校驗方式

2, 快取擊穿:快取中對應得資料過期,資料庫有對應資料,又有大批使用者訪問該資料導致資料庫壓力過大

解決方案:(1)可設定熱點資料長期有效 (2)加互斥鎖

3,快取雪崩:快取中大量得資料過期(而不是某一條)導致資料庫壓力過大甚至宕機

解決方案:(1)控制資料過期時間段不一致 (2)快取資料分部署對應資料存不同資料庫 (3)可設定熱點資料長期有效

快取穿透 快取雪崩 快取擊穿及解決方案

快取穿透 查詢的資料在快取伺服器 redis 中沒有,就繞過快取伺服器 直接與資料庫進行io互動,對伺服器造成巨大壓力 解決方案 查詢資料在redis如果沒有,就將該資料設定為null放在redis中 防止暴力攻擊 或者使用布隆過濾器 本質上布隆過濾器是一種資料結構,比較巧妙的概率型資料結構 pro...

快取穿透,快取雪崩,快取擊穿及解決方案

快取穿透 快取穿透是指,請求獲取的資料來源不存在,redis沒有則會去請求資料庫,資料庫也沒有,這時候大量請求可能會壓垮資料庫。快取擊穿 快取擊穿是指,請求獲取的某個redis key剛好過期,資料庫中有資料,這時候大量的請求就落到的資料庫上,造成資料庫掛掉。快取雪崩 快取雪崩是指,有大量的redi...

快取穿透 擊穿 雪崩以及解決方案

實際運用場景中,經常遇到高併發,尤其在秒殺 熱點資料,某一時刻產生大量併發請求,如果直接請求資料庫,會造成資料庫癱瘓,造成整個服務不可用,為了避免這種情況發生,經常用到快取技術,來緩衝高併發請求。引入快取技術,能夠緩解資料庫壓力,提供系統效能,系統更加健壯。但是同時快取技術會引發快取穿透 擊穿 雪崩...