비관적 락 성능테스트

hyezuu·2025년 3월 18일

재고 관리 시스템의 동시성 제어 성능 테스트

각 테스트 환경 및 결과 정리

약한 부하 테스트

  • 설정: 100명 동시 사용자, 20회 반복, 5초 램프업, 총 2,000건 요청
  • 결과:
    • 평균 응답 시간 279ms
    • 처리량 318.5 TPS
    • 오류율 0%
  • 의미: 적절한 부하에서 비관적 락이 안정적으로 작동함

중간 부하 테스트

  • 설정: 150명 동시 사용자, 15회 반복, 10초 램프업, 총 2,250건 요청
  • 결과:
    • 평균 응답 시간 5ms
    • 처리량 223.37 TPS
    • 오류율 0%
  • 의미: 사용자 증가에도 성능이 유지되며 응답 시간은 오히려 개선됨

대규모 부하 테스트

  • 설정: 1,000명 동시 사용자, 10회 반복, 4초 램프업, 총 10,000건 요청
  • 결과:
    • 평균 응답 시간 2,204ms
    • 처리량 370.4 TPS
    • 오류율 0%
  • 의미: 극한 상황에서도 오류 없이 작동하나 응답 시간이 크게 증가함

종합 분석

  1. 일관된 신뢰성: 모든 부하 수준에서 오류율 0% 유지, 데이터 무결성 보장

  2. 처리량 분석: 사용자 수 증가에도 처리량은 지속적으로 유지됨

    • 약한 부하: 318.5 TPS
    • 중간 부하: 223.37 TPS
    • 대규모 부하: 370.4 TPS
  3. 응답 시간 변화:

    • 중간 부하까지는 안정적, 대규모 부하에서 급격히 증가
    • 약한 부하: 279ms
    • 중간 부하: 5ms
    • 대규모 부하: 2,204ms
  4. 비관적 락의 특성:

    • 데이터 일관성 보장에 탁월함
    • 극한 부하에서 응답 시간 증가는 락 경쟁 때문

결론

현재 비관적 락 구현은 중간 규모 부하까지 매우 효과적으로 작동하며, 대규모 부하에서도 데이터 일관성을 완벽히 유지한다. 다만 1,000명 이상의 동시 사용자 환경에서는 응답 시간이 크게 증가한다.

데이터 일관성이 중요한 재고 관리 시스템에 적합하며, 성능 개선이 필요하다면 분산 락이나 메시지 큐 같은 아키텍처 변경을 고려할 필요가 있다.

profile
기록

0개의 댓글