반응형
![]() |
![]() |
|---|
- Case 1, Case 2 : 주차시간을 지켜 주차한 경우로, 보편적이고 일반적인 상황이라 가정한다.
- Case 3, Case 4 : 주차시간을 지키지 않은 경우로, 예외 상황이라 가정한다.→ 예외상황에서
version 1,version 1-1은 예약차량 입차가 가능한 상황에서version 2는 입차 안정성을 갖지 못하는 경우도 발생한다. - → 일반적인 상황, 예외상황 모두 포함하여
version 2가 예약차량 입차 안정성과 주차장 운영 효율성 모두 가장 높은 수치를 갖는다.
예약처리 일관성 테스트
- 상황 설정
- 주차장 총 구획 수 : 5자리
- 11:00 이후 주차장에 차량이 없으므로, 14:00
15:00, 15:0016:00 예약시 성공해야 한다.

- 테스트 결과

version 0의 경우, 1번•3번은 14:00 ~ 15:00, 2번•4번은 15:00 ~ 16:00 각각 동일한 시간으로 예약을 진행했으나, 3번•4번 예약만 성공하였다.
→ 예약하려는 시간과 상관없이, 예약을 시도하는 시점에서 주차장의 빈자리를 기준으로 예약 가능 여부가 정해지므로 예약처리 일관성이 보장되지 않는다.version 1,version 1-1,version 2의 경우, 예약을 시도하는 시점과 상관없이 예약 프로세스가 일관성 있게 처리된다.
예약차량 입차 안정성 및 주차장 운영 효율성 테스트
Case 1 : 일반차량이 많은 경우
- 상황 설정
- 일반차량 8대, 예약차량 2대

- 테스트 결과

- 예약차량이 적은 경우,
version 1,version 1-1,version 2모두 예약차량 입차 안정성이 확보되었다. - 주차장의 자리가 있을 경우 모든 예약이 성공하여, 예약시 주차장 운영 효율성은 높게 측정된다.
- 다수의 일반차량이 주차장을 이용할 경우,
version 2>version 1-1>version 1순으로 주차장 공간을 효율적으로 사용한다.
Case 2 : 예약차량이 많은 경우
- 상황 설정
- 예약차량 8대, 일반차량 2대

- 테스트 결과

version 1,version 1-1,version 2모두 예약차량 입차 안정성이 확보되었다.version 1,version 1-1은 한정된 예약구역을 갖고 있으므로, 예약차량이 많은 경우 주차장에 자리가 있어도 예약하지 못하는 경우가 발생한다. 반면,version 2는 예약과 일반차량 입차 모두 빈자리가 있으면 가능하므로 주차장 운영 효율성이 높다.
Case 3 : 일반차량이 출차를 안하는 경우
- 상황 설정
- 10대의 일반차량이 9:00에 1시간 주차시간을 설정하여 입차 시도한다.
- 10:00 ~ 11:00로 10대의 차량이 예약을 시도한다.
- 10:00가 되었지만 9:00에 입차한 차량들이 출차하지 않은 상황이 발생한다.

- 테스트 결과

- 일반차량이 주차하려고 했던 시간이 지나도 출차하지 않은 상태에서, 예약한 차량이 입차하려는 경우,
version 1과version 1-1은 예약구역이 확보되어 있으므로 예약한 차량들은 입차가 가능하다. 반면에,version 2는 예약시간을 지키지 않는 차량이 있을 경우, 다음 예약차량들이 입차하지 못하기 때문에 입차 안정성이 떨어진다. version 2는 주차장에 빈자리가 있을 경우, 예약과 입차가 모두 가능하므로 주차장을 매우 효율적으로 운영할 수 있다.version 1,version 1-1은 주차장에 빈자리가 있음에도 예약, 입차가 불가한 상황이 발생하며,version 1-1이 공통구역을 이용하여 조금 더 유동적으로 주차장 공간을 활용할 수 있어version 1보다 조금 더 높은 운영 효율성을 보인다.
Case 4 : 예약차량이 출차를 안하는 경우
- 상황 설정
- 10대의 차량이 09:00 ~ 10:00로 예약을 시도한다.
- 10대의 차량이 10:00 ~ 11:00로 예약을 시도한다.
- 09:00 10대, 10:00 10대 예약한 차량들이 입차를 시도한다.

- 테스트 결과

- 예약차량이 예약종료시간 이후에도 주차장을 나가지 않는 경우,
version 1-1은 공통구역을 유동적으로 사용할 수 있기 때문에 입차 안정성이 가장 높으며,version 2,version 1은 50% 정도의 안정성을 보인다. version 2는 주차장에 빈자리가 있을 경우, 예약과 입차가 모두 가능하므로 주차장을 매우 효율적으로 운영할 수 있다.version 1,version 1-1은 주차장에 빈자리가 있음에도 예약, 입차가 불가한 상황이 발생하며,version 1-1이 공통구역을 이용하여 조금 더 유동적으로 주차장 공간을 활용할 수 있어version 1보다 조금 더 높은 운영 효율성을 보인다.
반응형
'공부 > 성능개선' 카테고리의 다른 글
| [ParkNav] 코어 로직 동시성제어 테스트 코드 작성 (0) | 2023.04.27 |
|---|---|
| [ParkNav] QueryDSL을 이용한 관리자 페이지 성능개선 (0) | 2023.04.27 |
| [ParkNav] 알고리즘 Version 0 ~ Version 2 (0) | 2023.04.27 |
| [ParkNav] QueryDSL을 이용한 성능개선 (0) | 2023.04.19 |
| [ParkNav] 검색 성능 개선 기록 (1) | 2023.04.19 |


댓글