[REDIS] 다른 시스템에 레디 스 복제 사용 (멀티 마스터)
REDIS다른 시스템에 레디 스 복제 사용 (멀티 마스터)
내 응용 프로그램에서 분산 캐시로 레디 스를 사용하고 싶습니다. 요구 중 하나는 내가 한 장소와 다른 곳에서 또 다른 하나 개의 데이터 센터를 가지고 활성 활성 가용성 의미를 가지고있다. 뿐만 아니라 두 번째 사이트에 마스터를 가지고 - 하나 개의 데이터 센터가 실패하면 내 사용자가 아무 것도 느낄하고 두 번째 사이트에서 첫 번째 데이터 센터에서 모든 데이터를 가질 수있을 작업을 계속하고 싶다. 그것은 수 있습니까?
해결법
-
==============================
1.당신은 액티브 - 액티브, 일명, 멀티 마스터, 솔루션을 요구하고 있지만 문제는 당신이 그것을 필요로하지 않을 수 있습니다 제안합니다.
당신은 액티브 - 액티브, 일명, 멀티 마스터, 솔루션을 요구하고 있지만 문제는 당신이 그것을 필요로하지 않을 수 있습니다 제안합니다.
당신은 단지 데이터베이스 중 하나가 쓰기에 사용할 수 있도록 필요한 경우, 모든 쓰기는 항상 이동 즉, 당신은 레디 스의 표준 마스터 - 슬레이브 복제와 그것을 달성 할 수있다. 쓰기 작업에 대한 마스터를 사용하는 응용 프로그램을 직접 (잠재적으로) 당신의 노예가 아니라 일부를 읽어 역할을한다. 마스터가 실패하면 새 마스터가되도록 2ndary DC에서 노예를 촉진하고 그것을 사용하는 응용 프로그램 / 클라이언트를 리디렉션합니다. 모니터링 및 레디 스 '센티넬 달성 할 수 홍보.
당신은 설정의이 유형을 구현할 때 고려해야 할 것 몇 가지가있다. 레디 스 '복제가 마스터의 부하에 따라 너무 비동기 첫 번째 노트는 쓰기의 볼륨과 복제의 네트워크 링크 품질, 당신은 장애 조치의 경우 최근 업데이트의 일부를 잃어 버릴 수 있습니다. 둘째, 같은 주제에, 간 DC 네트워크 링크는 제한된 대역폭을하는 경향이하고 대기 시간이 증가 할 수 - 당신이 처리 아마도 트래픽에 대한 압축을 사용하는 레디 스를 구성해야합니다 (예를 들어를 통해 SSH 터널). 마지막으로, 당신은 다른 위치에 적어도 3 센티넬을 할 수 있습니다 오류를 감지 정확합니다. 그러나 이러한 문제에도 불구하고, 그게 다 해 드리겠습니다.
즉 쓰기 임의로 모든 데이터베이스에 대해 수행 할 수있는 멀티 마스터 설정이 순간 레디 스에서 지원하지 않는 말했다. 그 사실은 당신이 필요로하는 무슨 경우 다른 솔루션을 사용하는 것이 좋습니다.
참고 : 다른 DC가 (즉, 각 DC는 다른 DC에 의해 공유 아니에요 키의 별개의 부분 집합에 쓰기를 얻는다) 상호 배타적에 당신이 쓰기를 보장 할 수있는 경우에, 당신의 정확한 요구 사항에 따라, 당신은 마스터와 두 개의 데이터베이스를 사용할 수 있습니다 각 DC와 다른 하나의 슬레이브있다.
from https://stackoverflow.com/questions/27232522/using-redis-replication-on-different-machines-multi-master by cc-by-sa and MIT license
'REDIS' 카테고리의 다른 글
[REDIS] 단일 서버에서 여러 Laravel 응용 프로그램에 대한 큐의 레디 스를 사용하여 (0) | 2020.01.03 |
---|---|
[REDIS] 어떻게 레디 스 대량 삽입을 사용 하는가? (0) | 2020.01.03 |
[REDIS] 새로운 레디 스 마스터가 센티넬를 사용하는 클라이언트를 확인하는 방법 (0) | 2020.01.03 |
[REDIS] 누군가가 레디 스 SETBIT 명령을 설명 할 수 있습니까? (0) | 2020.01.03 |
[REDIS] StackExchange.Redis에서 비동기 명령과 Task.WhenAny 기다리고 있습니다 후 시간 제한 예외 (0) | 2020.01.03 |