下面由redis教程欄目給大家介紹redis數據淘汰策略,希望對需要的朋友有所幫助!
1、淘汰簡介
Redis官方給的警告,當內存不足時,Redis會根據配置的緩存策略淘汰部分keys,以保證寫入成功。當無淘汰策略時或沒有找到適合淘汰的key時,Redis直接返回out of memory錯誤。
2、最大緩存配置
在redis中,允許用戶設置的最大使用內存大小是 ?512G。
在?redis?中,允許用戶設置最大使用內存大小?server.maxmemory,在內存限定的情況下是很有用的。譬如,在一臺?8G?機子上部署了?4?個?redis?服務點,每一個服務點分配?1.5G?的內存大小,減少內存緊張的情況,由此獲取更為穩健的服務。
3、6種數據淘汰策略
1、volatile-lru:從已設置過期時間的數據集(server.db[i].expires)中挑選最近最少使用的數據淘汰
2、volatile-ttl:從已設置過期時間的數據集(server.db[i].expires)中挑選將要過期的數據淘汰
3、volatile-random:從已設置過期時間的數據集(server.db[i].expires)中任意選擇數據淘汰
4、allkeys-lru:從數據集(server.db[i].dict)中挑選最近最少使用的數據淘汰
5、allkeys-random:從數據集(server.db[i].dict)中任意選擇數據淘汰
6、no-enviction(驅逐):禁止驅逐數據
4、建議
?????了解了Redis的淘汰策略之后,在平時使用時應盡量主動設置/更新key的expire時間,主動剔除不活躍的舊數據,有助于提升查詢性能。
? ? ??Redis過期數據淘汰是指將鍵值對都刪除掉,請了解!!!!!!!!!!!!!