테스트 목적
- 대기열 통과 이후 티켓팅 과정에서 호출되는 API들에 대하여, 목표 SLO를 만족할 때의 TPS를 측정하기 위함이다.
- 테스트 API는 티켓팅 과정에서 사용되는 API만 대상으로 한다.
목표
- 티켓팅 과정에서 호출되는 전체 API P95 200ms
- 실제 환경에서는 더 개별적으로 설정하여 나눠야 할 것이다. 여기서는 과정을 익혀보고자 했기에 전체 200ms으로 잡았다.
- 여기서 결제 관련 API는 Thread.sleep(500)으로 모방만 하였으니 제외한다.
환경
- 백엔드 서버
- ALB
- t3.small (2 vCPU, 2GB)
- t3.small (2 vCPU, 2GB)
- K6 서버
VU를 조절해가며 목표 응답속도 P95 < 200ms 를 만족할 때의 TPS가 얼마나 되는지 확인
사용자의 행동 패턴 가정
-
Think Time
- 좌석 전체 조회 API → 좌석을 보고 결정하는 Think Time → 점유 시도
- 대략 2초로 가정한다.
-
좌석 전체 조회 API의 호출 빈도
- 사용자는 점유를 3번 정도 시도해보고 새로고침할 것이라고 가정한다.