Redis - 최대메모리 정책 설정 - MAXMEMORY-POLICY
Redis - 최대메모리 정책 설정 - MAXMEMORY-POLICY
이번 포스팅에서는 Redis에서 데이터가 가득 찼을때 처리방법에 대하여 알이보겠습니다
Linux Redis 이전글 |
https://server-talk.tistory.com/471 - Redis - In-Memory - 알아보기
https://server-talk.tistory.com/472 - Redis - 서버 설치 및 기본설정 알아보기
https://server-talk.tistory.com/473 - Redis - Redis-cli 기본 사용법
https://server-talk.tistory.com/474 - Redis - Redis Desktop Manager Tool
https://server-talk.tistory.com/475 - phpredis 설치 알아보기
https://server-talk.tistory.com/476 - Redis 활용하기 - phpredis 세션관리하기
https://server-talk.tistory.com/478 - Redis - 운영시 주의해야되는 명령어
Linux Redis Memory 데이터가 가득 찼을때 |
Redis에 데이터를 저장할때 Expire Time 을 지정하여 일정시간이 지나면 데이터가 삭제 될수 있도록 지정하는경우가 많이 있습니다
그러나 Expire Time 을 긴시간으로 지정하거나 또는 Expire Time 을 지정하지 않을경우 Redis 서버의 지정된 Memory가 가득 차게됩니다
Redis에 메모리의 데이터가 MAXMEMORY-POLICY 의 정책의 설정의 따라 데이터를 유지 또는 삭제하는 설정이 필요합니다
Linux Redis MAXMEMORY-POLICY |
1. MAXMEMORY-POLICY = noeviction(default)
메모리에 데이터가 가득차면 Redis에 새로운 키를 저장하지 않게됩니다 즉, 메모리가 가득 차면 Redis의 새로운 데이터를 입력과는게 불가능하기 때문에 장애가 발생할 수 있습니다
2. MAXMEMORY-POLICY = volatile-lru
lru 알고리즘 방식으로 가장 Expire 설정된 키중에서 가장 오래도록 사용하지 않았던 키를 삭제하는게됩니다 하지만 메모리에 데이터가 모두 가득 차고 Expire 설정값이 없는 키만 남은 경우 Redis의 새로운 데이터를 입력과는게 불가능하기 때문에 장애가 발생할 수 있습니다
3. MAXMEMORY-POLICY = allkey-lru
lru 알고리즘 방식으로 모든 키중에서 가장 오래도록 사용하지 않았던 키를 삭제하는게됩니다 초기 세팅중 가장 권장하는 설정 입니다.