Eviction policies help Redis decide which data to remove when memory is full. This keeps Redis fast and avoids crashes.
Eviction policies (LRU, LFU, random) in Redis
maxmemory-policy <policy_name>
Set this in your Redis configuration file or at runtime with the CONFIG SET command.
Common policies: allkeys-lru, allkeys-lfu, volatile-lru, volatile-lfu, volatile-random, allkeys-random, noeviction.
CONFIG SET maxmemory-policy allkeys-lru
CONFIG SET maxmemory-policy volatile-lfu
CONFIG SET maxmemory-policy allkeys-random
This example sets Redis to use 100 MB max memory and the allkeys-lru eviction policy. When memory is full, Redis removes the least recently used keys from all keys.
CONFIG SET maxmemory 100mb CONFIG SET maxmemory-policy allkeys-lru SET key1 value1 SET key2 value2 # Simulate memory full by adding many keys # Redis will evict least recently used keys automatically GET key1 GET key2
LRU means Least Recently Used: Redis removes keys not used recently.
LFU means Least Frequently Used: Redis removes keys used less often.
Random eviction removes any key randomly, which is simple but less efficient.
Eviction policies control how Redis frees memory when full.
LRU and LFU keep the most useful data by usage patterns.
Random eviction removes keys without pattern, simpler but less smart.