Redis AUTO-AOF-REWRITE-PERCENTAGE Parameter

Redis Server Course Redis Technical Support Redis Enterprise Server

Redis auto-aof-rewrite-percentage parameter

레디스 설정 파일인 redis.conf 에 있는 auto-aof-rewrite-percentage 파라미터에 대한 설명입니다.  

설명

AOF 파일의 다시쓰기(Rewrite)하는 시점을 정합니다.   이 파라미터 값을 100으로 했다면(기본값) 이전 다시쓰기한 다음 AOF 파일 크기가 100% 증가했으면 다시쓰기를 합니다.   다시쓰기는 내부적으로 BGREWRITEAOF 백그라운드 프로세스가 호출되어 수행됩니다.   만약 처음 다시쓰기를 하는 상황이면 레디스 서버 시작시 AOF 파일 크기를 기준으로 합니다.

AOF 파일 다시쓰기는 왜 할까요? AOF 파일은 계속 증가합니다.   그대로 두면 메모리의 데이터 크기보다 훨씬 커지게 됩니다.   예를 들어, 페이지 방문할때 마다 incr today_pagaview 가 수행된다면 일 평균 페이지 뷰가 10만이라면 AOF 파일에 매일 incr today_pagaview 가 기록됩니다.   이렇게 계속 증가하면 AOF 파일이 리눅스 파일 크기 제한에 걸러 더 이상 기록되지 못하고 에러가 날 수도 있습니다.   그리고 AOF 파일 크기가 커지면, 레디스 시작 시 AOF 파일을 읽어 들이는데 시간이 많이 걸립니다.   다시쓰기를 수행하면 10만번 이었던 incr 명령이 set today_pageview 로 변경되어 한 줄만 기록됩니다.   따라서 AOF 파일 크기가 매우 줄어듭니다.

레디스 클라이언트에서 info persistence 명령으로 관련 정보를 확인할 수 있습니다.   aof_base_size가 직전 다시쓰기 후 파일 크기이고 기준이 됩니다.   aof_current_size는 현재 AOF 파일 크기입니다.   즉 aof_base_size를 기준으로 aof_current_size가 100% 증가했으면 다시쓰기를 수행합니다.

그러면 레디스 시작 시 AOF 파일 크기가 0이였다면 어떻게 될까요?   그것은 auto-aof-rewrite-min-size 파라미터에 의해서 정해집니다.   AOF 파일의 최소 크기가 이것은 되어야 다시쓰기를 합니다.

AOF 파일 다시쓰기를 하지 않으려면 0으로 설정하면 됩니다.

사용 방법

auto-aof-rewrite-percentage 100   (기본값)
auto-aof-rewrite-percentage 0

<< NO-APPENDFSYNC-ON-REWRITE AUTO-AOF-REWRITE-MIN-SIZE >>

조회수 :

Email 답글이 올라오면 이메일로 알려드리겠습니다.