[Step 1] 비관적 락(Pessimistic Lock) 시각화 분석
목적
- 1차 실험에서는 비관적 락 적용 시 데이터 정합성은 유지되었으나, 요청 도착 순서와 실제 커밋 순서가 항상 일치하지 않는다는 점을 확인하였다.
- 2차 실험에서는 비관적 락을 지속 부하 환경에서 적용했을 때 실제 시스템 병목이 발생하는지 여부를 검증하고, 이를 시각화 지표 기반으로 분석하는 것을 목표로 한다.
테스트 시나리오
- 100명의 유저가 동시에 예약 요청
- 날짜를 7일 범위로 순환하여 지속적인 경합 유도
- 각 날짜 remaining_count = 100
- 총 성공 가능 예약 수 = 7일 × 100 = 700건
- k6 설정:
- 100 VU
- constant-vus
- 60초 지속 부하
📈 InnoDB row lock 지표

- row_lock_time: 최대 약 1.2초 / 이후 감소
- row_lock_waits: 최대 약 50ms / 지속적 누적 없음
→ 비관적 락으로 인해 락 경합은 발생했으나, 락 점유 시간이 짧아 장시간 유지되진 않음

- 순간적으로 대기열이 형성
- 지속적 상승 패턴 없음 → 시스템이 부하를 처리하고 회복하는 패턴