WEBBOOK CHAPTER

실패를 전제로 설계하는 분산시스템: 33장. 최종 체크카드

33장. 최종 체크카드

새 설계마다 여덟 질문을 반복한다. 무엇을 원자적으로 지켜야 하는가, 정본은 어디인가, deadline과 retry 책임은 누구인가, 중복과 순서는 어느 범위인가, 부분 성공을 사용자가 어떻게 보는가, 어떤 대사로 누락을 찾는가, 무엇에서 복구하는가, 어느 지표가 사용자 약속을 말하는가.

답마다 코드·계약·query·game day 증거를 링크한다. 답이 없으면 제품명을 더하는 대신 가정을 보류하고 실험을 설계한다. 운영자가 장애 중 5분 안에 읽을 한 장과 상세 ADR을 분리한다. 새 기능 PR과 분기 architecture review에서 같은 기준으로 사용한다.

출간 베타에서는 독자 세 명이 같은 장애를 독립적으로 설계하고 결과를 비교한다. 선택 기술이 달라도 불변식, 복구 원천, deadline, 대사와 증거가 일치하는지 본다. 설명만 가능하고 실행 test가 없으면 미완료다.