여러 컴퓨터간에 합의에 도달하는 수단으로 paxos와 2 단계 커밋의 차이점을 이해하려고합니다. 2 단계 커밋과 3 단계 커밋은 매우 이해하기 쉽습니다. 또한 3PC가 2PC에서 차단할 수있는 장애 문제를 해결하는 것으로 보입니다. 그래서 저는 Paxos가 무엇을 해결하고 있는지 정말로 이해하지 못합니다. Paxos가 정확히 어떤 문제를 해결했는지 누가 밝힐 수 있습니까?Paxos 대 2 단계 커밋
15
A
답변
23
2PC 블록. 트랜잭션 관리자가 실패 할 경우 사람 작업을 다시 시작해야합니다. 3PC 알고리즘 (몇 가지 알고리즘이 있음)은 원본 관리자가 실패 할 때 새 트랜잭션 관리자를 선택하여 2PC를 수정하려고합니다.
대부분의 프로세스 (관리자)가 올바른 한 Paxos는 차단하지 않습니다. Paxos는 실제로보다 일반적인 합의 문제를 해결하므로 트랜잭션 커밋을 구현하는 데에도 사용할 수 있습니다. 2PC와 비교하여 더 많은 메시지가 필요하지만 관리자 실패에는 복원력이 있습니다. 대부분의 3PC 알고리즘과 비교하여 Paxos는 더 간단하고 효율적인 알고리즘 (메시지 지연 최소화)을 구현하며 올바른 것으로 입증되었습니다.
Gray와 Lamport는 "Consensus on Transaction Commit"이라는 우수한 paper이라는 제목의 2PC와 Paxos를 비교합니다.
는 (베드로의 대답에, 나는 그가 2PL (2 단계 잠금)와 2PC를 혼합 생각합니다.)
그리고 세 Paxos의 더 가벼운 버전입니다 뗏목입니다. 현재 뗏목을 사용하는 많은 오픈 소스 시스템이 있습니다. Etcd, Consul, Cockroachdb 등 – Artem