緩存雪崩
如何應對緩存雪崩
首先要保證redis的高可用,可以使用redis cluster,開啟redis持久化,redis之前要使用本地緩存,請求先走本地緩存,沒找到再走redis
如果還是出現了緩存雪崩,開啟限流組件,比如每秒5000個請求,只讓其中2000個請求走數據庫,剩下3000個請求走降級,給用戶返回一些服務器繁忙的提示之類的
緩存雪崩發生后,根據RDB或者AOF文件恢復緩存數據
緩存穿透
緩存穿透:黑客發送大量請求,請求的數據是數據庫里沒有的,每次都會不走緩存,直接走數據庫,最后可能造成數據庫宕機
解決:只要數據庫沒查到,就寫一個空值到緩存,下次還有這個請求,就可以走緩存了
轉自:中華石杉Java工程師面試突擊