redis雪崩和穿透的解決方法

redis雪崩和穿透的解決方法
【redis雪崩和穿透的解決方法】
redis穿透指當用戶查詢的key在redis中不存在,對應的id在數據庫也不存在 , 此時被非法用戶進行攻擊,大量的請求會直接打在db上,造成宕機,從而影響整個系統 。解決方法:把空的數據也緩存起來,比如空字符串,空對象,空數組或list 。
redis雪崩是指緩存中的數據大批量失效,然后這個使用又要大量的請求進來,但是由于redis中的key全部失效了所有會全部請求到db上,造成宕機 。解決方法:設置對應熱點key永不過期 。過期時間錯開,過期時間使用隨機生成,并且熱點數據的過期時間設置的長一點,非熱點數據可以設置短一點 。多緩存結合,例如:請求進入,可以現請求redis,當redis中不存在的時候再去請求memcache,如果都沒有再去請求db 。

redis雪崩和穿透的解決方法

文章插圖