Redis------六大淘汰策略:新來的員工不小心把Redis伺服器撐爆了!!!
阿新 • • 發佈:2021-11-27
背景:Redis單執行緒,資料存放到記憶體中,如果有大量的資料儲存到Redis,未設定淘汰策略的話,Redis伺服器存在記憶體撐爆的危險。
一、六大淘汰策略:
- noeviction:當記憶體達到閾值的時候,所有引起申請記憶體的命令都會報錯。
- allkeys-lru:在主鍵空間中,優先刪除最近未使用的key(推薦)。
- volatile-lru:在設定過期時間的鍵空間中,優先刪除最近未使用的key。
- allkeys-random:在主鍵空間中,隨機刪除key。
- volatile-random:在設定了過期時間的鍵空間中,隨機刪除某個key。
- volatile-ttl:在設定了過期時間的鍵空間中,優先刪除更早過期時間的key。
二、相關配置:
- vim nginx.comf
- /maxmemory 查詢maxmemory配置位置(小寫n查詢下一個,大寫N查詢上一個),根據系統配置及相關執行緒佔用情況填寫一個合適的記憶體大小。
- 開啟maxmemory-policy 註釋,Redis預設是noeviction配置,修改適合你的淘汰策略。
建議有時間可以看一下redis配置檔案,還是挺不錯的!