N° 01 — 목록

'vector-clock' (1)

  1. Software Architecture/Distributed Systems

    Distributed Systems - 09. 시간·순서·클럭

    시간, 순서, 클럭 — 분산 시스템에서 "먼저"를 정하는 법2018년 한 분산 데이터베이스에서 두 사용자가 거의 동시에 같은 계좌에서 출금했다. 한 요청은 서울 노드에, 다른 요청은 부산 노드에 도착했다. 두 노드는 각자 자기 요청을 먼저 처리했다고 기록했다. 왜냐 — 두 노드의 시계가 7ms 차이가 났기 때문이다. 서울 노드의 시계가 10:00:00.007이었고, 부산 노드의 시계가 10:00:00.000이었을 때, 두 요청의 실제 도착 시간이 정확히 같았다면 — 두 노드는 서로 다른 "먼저"를 기록한다.어느 쪽이 "진짜 먼저"인가. 이 질문에 답하지 못해 시스템은 임의로 한쪽을 골랐다가 사용자 불만을 받았다. 모놀리스였다면 — 단일 시계가 "이 쪽이 1ms 빨랐다"라고 결정했을 것이다. 분산에선 시계..

    · 댓글