Redis는 데이터를 RAM에 저장하므로 메모리 관리가 결정적입니다 — maxmemory 한계, eviction 정책, 메모리 최적화, 모니터링을 이해하는 것이 메모리 부족 없이 Redis를 안정적으로 운영하는 데 필수적입니다.
maxmemory와 eviction
Redis가 모든 RAM을 소비하지 않도록 메모리 한계 설정:
maxmemory 2gb # Redis를 2GB로 제한
maxmemory-policy allkeys-lru # 한계 도달 시 무엇을 할지
한계 도달 시 Redis는 정책에 따라 키를 EVICT (또는 쓰기 거부):
allkeys-lru → 가장 최근에 덜 쓰인 것 제거 (임의 키) — 순수 cache에 흔함
allkeys-lfu → 가장 덜 자주 쓰인 것 제거
volatile-lru → TTL이 있는 키 중에서만 LRU 제거
volatile-ttl → 만료에 가장 가까운 키 제거
noeviction → 가득 차면 쓰기 거부 (Redis가 중요한 데이터를 보유하면 좋음)
