복붙노트

[REDIS] 레디 스 클러스터 /로드 밸런싱

REDIS

레디 스 클러스터 /로드 밸런싱

레디 스 마스터 마스터 복제를 지원하지 않습니다.

레디 스에서 나는 6 개 노드, 3 주, 3 노예, 구성이 있음을 볼 수 있습니다 튜토리얼,

하나는이 구성의 목적이 무엇인지 말해 줄 수 (노예 3 마스터의 목적은 무엇인가, 장애 복구를 위해인가?)

내 요구 사항은 레디 스에 응용 프로그램 서버에서 만든 연결의 수를 줄이는 것입니다. 나는 레디 스 1 노드에서 나는 키를 생성 그렇다면, 내가 여러 레디 스 노드를 가리킬 수있는 방법을 찾고 그래서, 나는 레디 스 노드 2에서 해당 키를 삭제할 수 있습니다.

그것은 수 있습니까?

해결법

  1. ==============================

    1.당신이 약간의 작업을 할 경우, 우선 당신은 기본 구성을 변경할 수 있습니다

    당신이 약간의 작업을 할 경우, 우선 당신은 기본 구성을 변경할 수 있습니다

    함수 데프 check_create_parameters있다. 당신은 하나 개의 마스터 및 슬레이브 복제를 설정할 수 있습니다.

    이 구성의 목적은 내결함성을위한 것입니다. 노예는 읽기 (읽기 전용) 사용할 수 있습니다. 세 주인으로, hashslots 동등하게 분배하고 재 배포 할 수있는로드 밸런싱 알고리즘과 실제 키. 노드 사이의 키 (내게로 테스트가 예상대로 작동합니다)된다 distirbutes 가능한 알고리즘의 단계 :

    이 알고리즘은 응답 시간을 최소화하는 데 도움이 될 것입니다. 내 말은:

    세 개의 마스터와 응답 시간을 최소화 할 수있다. 당신은 하나 개의 마스터와 구성을 가지고 있고이 마스터는 예를 들어 30000 #keys을 위해 보유하고있는 경우 한 번이다에서, 응답 시간은 15000을 각각 보유하고 2 개 마스터와 구성에서> 1000keys를 얻을 수 있습니다.

    당신이 MASTER1에서 키를 생성하는 경우에, 당신은 당신이 이동 오류가 발생합니다 MASTER2에서 그 키에 도달 (읽기)하려고하면. 그래서,이 솔루션은 해당 노드에 hashslots 매핑하는 스마트 클라이언트를 만드는 것입니다. 따라서, 당신은 MASTER2 올바른 마스터로 요청을 리디렉션 만 경우에 MASTER2에서 키를 삭제할 수 있습니다.

    희망이 도움이.

  2. from https://stackoverflow.com/questions/41500391/redis-cluster-load-balancing by cc-by-sa and MIT license