돈이 오가는 자리
버튼을 누가 눌러도 되는지, 재시도가 받는 쪽에 무는 값, 매장 둘을 도는 앱 하나.
실전레슨 4개26 분
- 1이건 누가 눌러도 되나 — 버튼을 숨기는 것은 권한이 아니다화면 하나를 두 사람이 연다. 취소 버튼은 둘 다에게 보인다. 알바가 누르면 서버가 거절하고, 거절이 장부에 남는다. 화면 파일은 같은 파일이고, 그 해시를 로그에 찍어 뒀다.6 분
- 2둘 다 "예약됐습니다" — await 하나가 가르는 것같은 시간을 두 사람이 동시에 잡는다. 두 처리기는 말로 설명하면 똑같은 일을 한다 — 비었는지 보고, 비었으면 잡는다. 한쪽은 두 사람에게 다 확정을 보내고, 다른 쪽은 안 보낸다. 차이는 중간에 있는 await 하나다.7 분
- 3재시도가 무는 값 — 다시 걸어 보는 쪽 말고, 받는 쪽재시도에 관한 글은 대개 거는 쪽에서 쓰여 있다. 이 편은 받는 쪽에서 센다. 700밀리초 장애를 네 명이 두 가지 방법으로 넘겼고, 둘 다 결국 통과했다. 다른 건 게이트웨이가 그동안 맞은 횟수다 — 64번과 25번.7 분
- 4앱 하나로 두 매장 — 두 번째 매장이 코드 수정이 되면 진 것이다같은 카운터 화면을 두 카페가 쓴다. 가격도 영업시간도 메뉴도 다르고, 한 곳은 세금 포함 표기, 다른 곳은 별도 표기다. 번들 안에는 두 매장 이름이 한 글자도 없고, 검증이 그걸 grep 한 줄로 지킨다.6 분