一.過期Key兩種方案
- 定期刪除:eg每十秒進行定期刪除,消耗CPU
- 惰性刪除:請求時發現過期刪除,內存會被一直佔用
二.內存被Redis緩存佔用滿了怎麼辦?
內存佔滿了,可以使用硬盤,來保存,但是沒意義,因爲硬盤沒有內存快,會影響redis性能。所以,當內存佔用滿了以後,redis提供了一套緩存淘汰機制:MEMORY MANAGEMENT
noeviction: 舊緩存永不過期,新緩存設置不了,返回錯誤
allkeys-lru:清除最少用的舊緩存,然後保存新的緩存(推薦使用)
allkeys-random:在所有的緩存中隨機刪除(不推薦)
volatile-lru:在那些設置了expire過期時間的緩存中,清除最少用的舊緩存,然後保存新的緩存
volatile-random:在那些設置了expire過期時間的緩存中,隨機刪除緩存
volatile-ttl:在那些設置了expire過期時間的緩存中,刪除即將過期的