통 통한은 단순히 분산된 잠금 서비스, 어디 통 통한 클라이언트의 수천 수 있습니다 "잠금" 또는 "잠금 해제" 리소스, bigtable 등 MapReduce 시스템 내에서 공동 작업 잘 사용 하 고 통 통한, 구현에는 유명한 과학자 레슬리 램 포트 Paxos를 사용 하 여 알고리즘을 "잠금"을 달성 하기 위해 작업 파일의 창조를 통해
메커니즘을 구현, 통 통한 자체 분산된 파일 시스템 이며 통 통한 서비스에 파일을 만들고 일부 파일에 대 한 기본 작업을 수행 하는 클라이언트를 사용 하는 메커니즘을 제공 합니다. 파일 "잠금" 기능을 통해 통 통한. 통 통한 파일은 "잠금", 파일의 생성은 실제로 "잠그는" 작업, 선점 "잠금"을 성공적으로 파일을 만든 서버입니다. 때 사용자 열리고, 닫히고 파일을 읽고, 그것은 공유 또는 단독 잠금을 획득 하 고 통신 메커니즘을 통해 사용자에 게 업데이트를 보냅니다.
아키텍처에서 통 통한 클러스터 일반적으로 이루어져 5, 각각의 하나는 복제 복제 구조와 기능, 마스터 노드로 선택 복제 (복제) 복제 Paxos 프로토콜을 사용 하 여 로그 일관성을 유지 하 고 오프 라인 및 다음 온라인으로 다시 복제 될 수 있습니다. 일단 당신이 다시 온라인, 다른 노드와 일관 된 데이터를 유지 해야 합니다. 클라이언트 쪽 통 통한 라이브러리를 사용 하 여 액세스할 수 있습니다.
주요 장점
일관성 문제를 해결 하기 위해 직접 하지만 잠금 서비스를 통해 그것을 해결 하기 위해 Paxos 알고리즘 같은 프로토콜을 구현 하지 왜?이 다음과 같은 다섯 가지 주요 이점이 있다:
1. 대부분의 개발자는 그들은 그래서 그들은 처음에 일관성 프로토콜을 사용 하지 않는 서비스를 개발 하기 시작 하는 때 계정에 이러한 일관성을 복용 하지 마십시오. 그것은 서비스 문제가 심각 하 게 받아들이지는 성숙 하는 때에 만입니다. 잠금 서비스를 사용 하 여 원래 프로그램 아키텍처 및 통신 메커니즘을 유지 하면서 간단한 계산을 추가 하 여 일관성의 문제를 해결할 수 있도록 만들 수 있습니다.
2. 많은 경우에, 그것은 단지 마스터, 뿐만 아니라 필요 파일을 사용 하는 경우 메시지를 저장 하거나 마스터의 주소를 다른 사람에 게 알려의 선거에 뚱 땡이, 아니만 잠금 기능을 제공 뿐만 아니라 파일 (에서 유용한 정보를 기록 하 같은 마스터의 주소). 그래서, 많은 개발자가 사용 하 여 통 통한 메타 데이터 및 구성 하기.
3. 잠금 기반된 개발 인터페이스는 더 쉽게 개발자에 게 친숙 한입니다. 모든 개발자가 일관성 프로토콜을 이해 하지만 대부분의 사람들이 자물쇠를 사용 한다.
4. 일관성 계약 일반적으로 있는 경우 Paxos 알고리즘이 이며 가장 확실 한 예 사용의 뚱 땡이, 하나의 클라이언트를 사용할 수 있습니다 경우에 높은 가용성을 보장 하기 위해 여러 복제본을 필요 합니다.
5. 그것을 볼 수 있다 잠금 서비스는이 형태로 있기 때문에 통 통한 뿐만 아니라 일관성, 문제를 해결 하 고 싶어 하지만 또한 더 유용한 기능을 제공 합니다. 사실, Google은 이름 서비스로 뚱뚱한 사용 하는 개발자의 많은 그리고 그것은 잘 작동.
관련된 제품
GFS, MapReduce 및 앞에서 설명한 BigTable과 마찬가지로 또한 동물원의 사육 담당자 라는 Hadoop 시리즈 클래스 통 통한 구현이입니다. 구현, 동물원의 사육 담당자는 독립적으로 설계 하 고 최적화 된 2 단계 커밋 프로토콜의 집합 기반 그리고 HBase, 야 후 메시지 브로커, 가져올 서비스의 야 후!에 성공적으로 적용 되었습니다 크롤러 시스템입니다.