由于 Redis 在 RAM 中存储数据,内存管理至关重要 — 理解 maxmemory 限制、驱逐策略、内存优化和监控对于可靠运行 Redis 而不用尽内存至关重要。
maxmemory 和驱逐
Set a memory limit so Redis doesn't consume all RAM:
maxmemory 2gb # cap Redis at 2GB
maxmemory-policy allkeys-lru # what to do when the limit is reached
When the limit is hit, Redis EVICTS keys per the policy (or rejects writes):
allkeys-lru → evict least-recently-used (any key) — common for a pure cache
allkeys-lfu → evict least-frequently-used
volatile-lru → evict LRU among keys WITH a TTL only
volatile-ttl → evict keys closest to expiry
noeviction → reject writes when full (good if Redis holds important data)
