>  기사  >  데이터 베이스  >  Redis Sentinel 모드는 클러스터입니까?

Redis Sentinel 모드는 클러스터입니까?

(*-*)浩
(*-*)浩원래의
2019-11-23 09:36:372626검색

Redis Sentinel 모드는 클러스터입니까?

Sentinel 모드

Sentinel 자체는 독립적으로 실행되는 프로세스이며 Redis 클러스터를 모니터링하기 위해 Redis 클러스터와 통신할 수 있는 다른 시스템에 배포할 수 있습니다.

모니터링: Sentinel은 Redis가 잘 실행되고 있는지 정기적으로 모니터링합니다. (권장 학습: Redis 비디오 튜토리얼)

알림: Redis 노드에 문제가 있는 것을 센티넬이 발견하면 다른 프로세스(클라이언트 등)에 알릴 수 있습니다.

자동 오류 마이그레이션: 마스터가 다운된 후 , 활성/대기 전환을 수행합니다. 클라이언트가 실패한 마스터 서버에 연결을 시도하면 클러스터는 새 마스터 서버의 주소도 클라이언트에 반환하므로 클러스터는 새 마스터 서버를 사용하여 실패한 서버를 교체할 수 있습니다. 마스터가 회복되면 슬레이브가 됩니다.

Redis Sentinel은 가십 프로토콜을 사용하여 마스터가 오프라인인지 여부를 수신하고 투표 프로토콜을 사용하여 결함 마이그레이션 수행 여부를 결정하는 분산 시스템입니다. 실행 시 센티넬의 절반을 획득해야 함) 승인 후에만 실행할 수 있으며, 어떤 슬레이브가 마스터로 선택되는지.

주관적 오프라인: 센티넬 프로세스가 마스터가 연결할 수 없음을 모니터링하면 마스터가 오프라인이라고 생각합니다.

목표 오프라인: 다른 센티널 프로세스에서 마스터 정보를 수신할 때 실제로 오프라인인지 확인합니다.

각 센티널은 매초 마스터, 슬레이브 및 기타 센티널에 ping 요청을 보냅니다.

클러스터 모드

Sentinel은 원활한 확장 및 노드 추가를 지원하지 않기 때문에 데이터를 수동으로 마이그레이션해야 합니다. 이를 위해 Reids는 분산 솔루션을 구현하기 위해 Redis Cluster를 공식적으로 제공합니다. 분산 클러스터는 먼저 분할 규칙에 따라 전체 데이터 세트를 여러 노드에 매핑하는 문제, 즉 데이터 세트를 여러 노드로 나누는 문제를 해결하며 각 노드는 전체 데이터의 하위 집합을 담당합니다.

Consistency Hashing과 같은 것이라고 생각합니다. 이제 키의 해시가 계산되고 샤드가 획득되었으므로 클러스터 모드의 단점은 키의 일괄 작업을 수행할 수 없다는 것입니다. 이 키는 다른 Redis 인스턴스에 있을 수 있기 때문입니다.

클러스터 장애 감지도 가십을 통해 각 Redis 노드에 통보되며, 두 노드가 서로 핑(Ping)과 퐁(Pong)을 합니다.

노드를 삭제하거나 추가하려면 데이터 마이그레이션이 필요합니다.

Redis 관련 기술 기사를 더 보려면 Redis 데이터베이스 사용 튜토리얼 소개 칼럼을 방문하여 알아보세요!

위 내용은 Redis Sentinel 모드는 클러스터입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.