
'네트워크' 상에서 분산된 컴퓨터 장치들이 메시지를 주고 받으며
'특정 목적'의 일을 수행하는 것
네트워크를 통해 보낸 메시지가 종착지에 '정해진 시간'에 도달할 수 없는 통신
잘못된 결과가 발생해선 안됨
원하는 결과가 '어느 시점'에는 반드시 실행되어야 함.
그런데 안정성과 라이브니스를 동시에 충족하기란 쉽지 않다.
분산 컴퓨팅 참여 프로세스 간 거래 행위
둘다 하거나, 둘다 안하는
위 요구 조건 2가지인 안전성과 라이브니스를 충족할 수 있는 프로토콜

TC 추가 요소 : Write-Ahead Log
2. Shard A가 Prepare OK를 보내고 다운 => 나도 보내기 전 log를 저장해두고, 재전송해서 TC의 메시지를 받는다.
Shard 추가 요소 : Write-Ahead Log, Retransmission
정리하자면, 2PC란
을 구현한 것이다.