락 순서 고정
가능한 모든 코드 경로가 같은 전역 순서로 자원을 잡게 한다.
실무의 데드락 회피는 모든 요청을 증명하기보다, 위험한 대기를 짧게 끊고 재시도와 대체 경로를 설계하는 쪽에 가깝다.
가능한 모든 코드 경로가 같은 전역 순서로 자원을 잡게 한다.
획득 실패 시 블로킹하지 않고 즉시 판단할 수 있게 만든다.
부분 점유를 오래 유지하지 않아 점유와 대기 시간을 줄인다.
지수 백오프나 랜덤 지연으로 같은 충돌 타이밍을 피한다.
재시도 횟수나 시간 제한을 넘으면 큐 적재, 롤백, 오류 응답으로 전환한다.
두 락을 모두 얻으면 짧은 임계 영역을 수행하고 역순으로 해제한다.
충돌은 장애가 아니라 정상 경로로 보고, 상태를 깨끗하게 되돌린 뒤 다시 시도한다.
계속 실패하면 사용자 요청을 무한정 붙잡지 않고 상위 정책으로 넘긴다.