>  기사  >  데이터 베이스  >  Redis 마스터-슬레이브 복제 소개

Redis 마스터-슬레이브 복제 소개

尚
앞으로
2020-03-23 09:31:301982검색

Redis 마스터-슬레이브 복제 소개

redis의 복제 기능은 여러 데이터베이스 간의 데이터 동기화를 지원합니다. 하나는 마스터 데이터베이스(마스터)이고 다른 하나는 슬레이브 데이터베이스(슬레이브)이며, 쓰기 작업이 발생하면 일반적으로 슬레이브 데이터베이스에 데이터가 동기화됩니다. 읽기 전용이며 마스터 데이터베이스에서 동기화된 데이터의 경우 마스터 데이터베이스는 여러 개의 슬레이브 데이터베이스를 가질 수 있지만 슬레이브 데이터베이스는 하나의 마스터 데이터베이스만 가질 수 있습니다.

추천: redis 입문 튜토리얼

redis의 마스터-슬레이브 복제 기능은 데이터베이스 읽기와 쓰기를 효과적으로 분리하고 서버의 로드 용량을 향상시킬 수 있습니다. 마스터 서버는 주로 쓰기 작업을 담당하며, 슬레이브 서버는 주로 읽기 작업을 담당합니다

마스터-슬레이브 복제 프로세스:

1: 슬레이브 데이터베이스가 시작되면 마스터 데이터베이스에 동기화 명령을 보냅니다.

2: 동기화 명령을 받은 후 master 데이터베이스는 백그라운드에서 스냅샷 저장을 시작하고(rdb 작업 수행) 저장 기간 동안 수신된 명령을 캐시합니다

3: 스냅샷이 완료되면 redis는 스냅샷 파일과 캐시된 모든 명령을 슬레이브 데이터베이스로 보냅니다.

4: 데이터베이스에서 받은 후 스냅샷 파일이 로드되고 수신된 캐시된 명령이 실행됩니다.

참고: redis 2.8 이전 버전: 마스터-슬레이브 데이터베이스가 동기화되면 네트워크 문제로 인해 슬레이브 데이터베이스의 연결이 끊어졌다가 다시 연결된 후 위 작업이 다시 실행되며 중단점 재개는 지원되지 않습니다. Redis2.8 이상에서는 중단점 재개를 지원합니다.

참고: Redis 2.8부터 데이터 보안을 보장하기 위해 최소 N개의 슬레이브 노드가 있는 경우에만 마스터 노드가 쓰기 작업을 수행할 수 있도록 min-slaves-to-write를 구성할 수 있습니다. 슬레이브 노드는 초당 한 번씩 마스터 노드에 ping을 보내고, 마스터 노드는 각 슬레이브 서버가 마지막으로 ping을 보낸 시간을 기록합니다. 사용자는 구성을 통해 최대 네트워크 지연 min-slaves-max-lag와 쓰기 작업을 수행하는 데 필요한 최소 슬레이브 서버 수를 지정할 수 있습니다. 이러한 서버 지연 값이 min-slaves-max-lag 초보다 작으면 마스터 서버는 클라이언트가 요청한 쓰기 작업을 수행합니다. 한 가지 조건이 충족되지 않으면 쓰기 작업이 수행되지 않으며 마스터 서버는 쓰기 작업을 요청하는 클라이언트에 오류를 반환합니다.

2. 마스터-슬레이브 복제 배포:

Redis 마스터-슬레이브 구조는 하나의 마스터와 여러 슬레이브를 지원합니다.

마스터 노드: 192.168.1.170

슬레이브 노드: 192.168.1.171

참고: 모든 구성은 슬레이브 노드도 동일합니다

방법 1: 구성 파일을 수동으로 수정

슬레이브 노드의 redis 구성 파일에서 Slaveof 속성만 추가로 수정하면 됩니다

  min-slaves-to-write
  min-slaves-to-write 3
  min-slaves-max-lag 10

170 마스터 노드에서 Redis를 시작하고 Redis 정보를 확인하세요 information (info 명령 실행)

Redis 마스터-슬레이브 복제 소개171 슬레이브 노드에서 redis 시작

Redis 마스터-슬레이브 복제 소개redis 정보 정보 보기

방법 2: 동적 설정

redis-cli를 통해 슬레이브 노드 서버에 연결 그리고 다음 명령을 실행합니다.

Redis 마스터-슬레이브 복제 소개 3. 마스터-슬레이브 복제 시 주의할 사항:

① 마스터-슬레이브 복제를 사용하는 경우 마스터가 지속성을 활성화했는지 확인하거나 충돌 후 자동으로 다시 시작되지 않는지 확인하세요. . 슬레이브는 마스터의 전체 백업이므로 빈 데이터 세트로 마스터를 다시 시작하면 슬레이브도 지워집니다.

② redis 복제 기능 구성 시 마스터 데이터베이스에 비밀번호가 설정되어 있는 경우, 슬레이브 데이터 구성 파일의 masterauth 매개변수를 통해 마스터 데이터베이스의 비밀번호를 설정해야 슬레이브 데이터베이스가 자동으로 auth 명령을 사용하게 됩니다. 마스터 데이터베이스에 연결할 때 인증합니다. 이는 비밀번호 없는 로그인과 같습니다.

관련 권장 사항:

mysql 비디오 튜토리얼:

https://www.php.cn/course/list/51.html

위 내용은 Redis 마스터-슬레이브 복제 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 oschina.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제