>  기사  >  ZooKeeper란 무엇인가요?

ZooKeeper란 무엇인가요?

Guanhui
Guanhui원래의
2020-06-24 17:06:284893검색

ZooKeeper는 오픈 소스 분산 코디네이터이자 전형적인 분산 데이터 일관성 솔루션으로, 복잡하고 오류가 발생하기 쉬운 분산 일관성 서비스를 캡슐화하여 간단하고 쉬운 일련의 시스템을 사용자에게 제공하도록 설계되었습니다. -원자적 연산을 사용합니다.

ZooKeeper란 무엇인가요?

ZooKeeper 주요 기능

zookeeper 자체는 분산 프로그램이므로 노드의 절반 이상이 살아남으면 정상적으로 서비스를 제공할 수 있습니다.

고가용성을 보장하기 위해 Zookeeper는 일반적으로 클러스터 형태로 배포됩니다. 이러한 방식으로 클러스터에 있는 대부분의 머신을 사용할 수 있는 한 Zookeeper 자체를 사용할 수 있습니다.

zookeeper는 데이터를 메모리에 저장하여 높은 처리량과 낮은 대기 시간을 보장합니다.

zookeeper는 고성능, 특히 쓰기보다 읽기가 많은 프로그램에서 고성능입니다. 쓰기로 인해 모든 서버 간의 동기화 상태가 발생하기 때문입니다.

zookeeper에는 임시 노드라는 개념이 있습니다. 임시 노드는 이를 생성한 클라이언트 세션이 활성 상태로 유지되는 한 존재합니다. 세션이 종료되면 임시 노드가 삭제됩니다.

사육사 하단 레이어는 두 가지 기능만 제공합니다. 1. 사용자 프로그램이 제출한 데이터를 관리합니다. 2. 사용자 프로그램이 제출한 데이터 노드에 대한 모니터링 서비스를 제공합니다.

ZooKeeper 기능

ZooKeeper는 Fast Paxos 알고리즘을 기반으로 합니다. Paxos 알고리즘에는 라이브락 문제가 있습니다. 즉, 여러 제안자가 시차를 두고 제출하는 경우 상호 배타적일 수 있으며 어떤 제안자가 성공적으로 제출할 수 없는 반면 Fast Paxos는 몇 가지 최적화를 수행하고 리더만 선출했습니다. 특정 알고리즘은 Fast Paxos에서 확인할 수 있습니다. 그러므로 ZooKeeper를 이해하려면 먼저 Fast Paxos를 이해해야 합니다. [2]

ZooKeeper의 기본 운영 프로세스:

1. 리더를 선출합니다.

2. 데이터를 동기화합니다.

3. 리더를 선출하는 과정에는 많은 알고리즘이 있지만 충족해야 할 선출 기준은 동일합니다.

4. 리더는 루트 권한과 마찬가지로 가장 높은 실행 ID를 가지고 있어야 합니다.

5. 클러스터에 있는 대부분의 머신은 선택된 리더에 응답하고 수락합니다.

추천 튜토리얼: "PHP"

위 내용은 ZooKeeper란 무엇인가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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