什麼是快取穿透 快取雪崩 快取擊穿

2021-09-26 08:39:39 字數 381 閱讀 8710

快取穿透是指查詢乙個一定不存在的資料時,由於在快取中沒有這個key,這時會到db中去查詢,可是db中也沒有這條資料,這時也無法寫入快取,這就造成了快取穿透,如果這時有人利用這個漏洞頻繁攻擊應用,db就可能掛掉了

解決方案:可以把key存入快取中,value設定為空,過期時間最多不超過5分鐘

快取雪崩是指快取過期時間相同,導致了在同一時間大量快取同時過期,這時所有的請求操作衝入db上,可能導致db直接掛掉

解決方案:可以把key設定不同的過期時間,讓快取失效的時間點盡量均勻。

快取擊穿是指設定了一些會過期的熱點資料,這時熱點資料過期,大量的併發請求過來,可能會瞬間把db壓垮

解決方案:每次執行get操作後,判斷剩餘過期時間,如果還有一分鐘過期,給它更新快取並且重新設定時間

什麼是redis快取穿透,快取雪崩,快取擊穿

一.快取穿透 快取穿透是指查詢資料庫中一定不存在的資料,我們正常的操作流程,在查詢資料庫前,先去查詢快取,如果key不存在或者key過期失效,再去查詢資料庫,並把查詢到的物件放到快取中,如果查詢到的資料為null,不新增快取。流程 二.快取雪崩 快取雪崩可以理解為在某個時間段,快取集中過期,然後這段...

什麼是Redis快取穿透 快取雪崩 快取擊穿

快取穿透,是指查詢乙個資料庫一定不存在的資料。正常的使用快取流程大致是,資料查詢先進行快取查詢,如果key不存在或者key已經過期,再對資料庫進行查詢,並把查詢到的物件,放進快取。如果資料庫查詢物件為空,則不放進快取。採用快取空值的方式,也就是 流程 中第5步,如果從資料庫查詢的物件為空,也放入快取...

快取穿透 快取擊穿 快取雪崩

一 快取處理流程 前台請求,後台先從快取中取資料,取到直接返回結果,取不到時從資料庫中取,資料庫取到更新快取,並返回結果,資料庫也沒取到,那直接返回空結果。二 快取穿透 描述 快取穿透是指快取和資料庫中都沒有的資料,而使用者不斷發起請求,如發起為id為 1 的資料或id為特別大不存在的資料。這時的使...