param_repl-backlog-size
Redis REPL-BACKLOG-SIZE Parameter
Redis Server Course | Redis Technical Support | Redis Enterprise Server |
---|
Redis repl-backlog-size parameter
레디스 설정 파일인 redis.conf 에 있는 repl-backlog-size 파라미터에 대한 설명입니다.
이 파라미터는 버전 2.8.0에 부분적 재동기화(Partially Resynchronization) 기능과 함께 추가되었습니다.
이 문서는 레디스 서버 버전 3.2.2을 기준으로 만들었습니다.
0으로 설정할 수 없습니다. 0으로 하면 레디스 서버 시작시 다음과 같은 에러를 발생시키고 멈춥니다.
레디스 서버가 시작했을 때는 backlog-buffer를 할당하지 않습니다. 이 서버에 다른 서버가 클론으로 연결되면
버전 3.2이하는 다음과 같습니다.
서버가 마스터에서 클론으로 변경되면
서버가 클론에서 마스터로 변경되어도
버전 4부터는 복제서버는 항상
이것은 부분 동기화(PSYNC2)를 위해서 필요합니다.
복제에 대한 자세한 내용은 여기를 보세요.
이 문서는 레디스 서버 버전 3.2.2을 기준으로 만들었습니다.
설명
클론(슬레이브)와 연결이 끊어졌을 때 입력되는 데이터를 backlog-buffer에 저장했다가 다시 연결되면 전체 데이터를 다시 보낼 필요없이 backlog-buffer의 데이터를 클론에 보내서 동기화합니다. 이렇게 동작하는 것을 부분 동기화(partial resynchronization)라고 합니다. 입력되는 데이터가 이 버퍼 사이즈를 초과하면 전체 동기화(full synchronization)를 합니다.repl-backlog-size
는 이 backlog-buffer
사이즈입니다. 1mb
가 기본값(default value)입니다. kb, mb, gb
단위를 사용할 수 있습니다.0으로 설정할 수 없습니다. 0으로 하면 레디스 서버 시작시 다음과 같은 에러를 발생시키고 멈춥니다.
*** FATAL CONFIG FILE ERROR ***
Reading the configuration file, at line 392
>>> 'repl-backlog-size 0'
repl-backlog-size must be 1 or greater.
Reading the configuration file, at line 392
>>> 'repl-backlog-size 0'
repl-backlog-size must be 1 or greater.
레디스 서버가 시작했을 때는 backlog-buffer를 할당하지 않습니다. 이 서버에 다른 서버가 클론으로 연결되면
repl-backlog-size
만큼 backlog-buffer
가 할당합니다.버전 3.2이하는 다음과 같습니다.
서버가 마스터에서 클론으로 변경되면
backlog-buffer
를 해제합니다. 서버가 클론에서 마스터로 변경되어도
backlog-buffer
를 할당하지 않습니다. 버전 4부터는 복제서버는 항상
backlog-buffer
를 가지고 있습니다.이것은 부분 동기화(PSYNC2)를 위해서 필요합니다.
CONFIG GET
명령으로 repl-backlog-size를 확인할 수 있고,
레디스 서버 운영 중 CONFIG SET
명령으로 변경할 수 있습니다.
또한 INFO replication
명령에서 repl-backlog-size를 확인할 수 있습니다.Backlog-buffer
메모리 할당 여부는 INFO memory
명령에서 used_memory
로 확인할 수 있습니다.
복제에 대한 자세한 내용은 여기를 보세요.
사용 방법
repl-backlog-size 1kb
repl-backlog-size 1mb
repl-backlog-size 1gb
repl-backlog-size 1mb
repl-backlog-size 1gb
<< REPLICA-PRIORITY | REPL-TIMEOUT >> |
---|
조회수 :
Email
답글이 올라오면 이메일로 알려드리겠습니다.