Design Rules

트랜잭션은 짧게 잡고 잠금 순서는 고정한다

범위가 길수록 스냅샷, Undo 보존, 잠금 대기, 데드락 가능성이 함께 커집니다.

엇갈린 순서T1: 주문 → 재고
T2: 재고 → 주문
서로 가진 잠금을 기다리며 데드락 위험이 커집니다.
고정된 순서모든 코드: 주문 → 재고같은 순서로 접근하면 순환 대기를 줄일 수 있습니다.
짧게 끝내기
필요한 행만 잠그기
항상 같은 순서
사용자 입력, 외부 API 대기, 긴 계산은 트랜잭션 바깥으로 빼고 잠금 순서는 팀 규칙으로 고정합니다.