Case 3,4)
트래픽의 부하가 심하지 않은 경우(User 5000, Ramp-up period 15sec~60sec) 락 사용 전과 낙관적 락 사용 후의 응답속도와 Throughtput 은 비슷하다는 것을 볼 수 있다.
Case 1,2)
하지만, 대규모 트래픽을 처리해야 할 때 (User 10000, Ramp-up period 5sec~10sec) 낙관적 락을 사용하는 경우 성능은 사용하기 전에 비해 다음과 같이 개선된다,
Case 1
- Create Order
- 응답 시간: 1,417ms 개선 (29.6% 향상)
- 처리량: 82.3건/초 증가 (29.3% 향상)
- Attempt Payment
- 응답 시간: 3,187ms 개선 (40.3% 향상)
- 처리량: 60.0건/초 증가 (30.2% 향상)
- Check Stock
- 응답 시간: 1ms 증가 (성능 저하 10%)
Case 2
- Create Order
- 응답 시간: 518ms 개선 (14.7% 향상)
- 처리량: 79.2건/초 증가 (22.9% 향상)
- Attempt Payment
- 응답 시간: 1,543ms 개선 (34.3% 향상)
- 처리량: 19.4건/초 증가 (4.7% 향상)
- Check Stock
- 응답 시간: 1ms 증가 (성능 저하 -5%)
즉, 대규모 트래픽처리를 해야 하는 상황에서 Redis 와 낙관적 락을 사용할 경우 CreateOrder 의 응답 시간은 15~30% 의 성능 향상, 처리량은 2~30% 의 성능 향상이 있었고, Attempt Payment 의 응답시간은 3~40%의 성능 향상, 처리량은 작게는 5%에서 30% 까지의 성능 향상이 있었다.
'Project > Buy me If you can' 카테고리의 다른 글
Buyme TIL240828 jpa 쿼리오류 / docker-compose 환경설정 / 로컬의 properties , docker-compose 환경설정 관련 학습 (0) | 2024.08.30 |
---|---|
Buyme TIL240827 MSA 환경에서 api gateway 를 통한 데이터 통신 (0) | 2024.08.29 |
Buyme TIL240826 멀티모듈 통신오류 (0) | 2024.08.29 |
Buyme TIL240816 모노리스 서비스를 MSA 로 구조화하기 - 멀티모듈화 / (트러블슈팅) 콘텐츠 루트 충돌 문제 (0) | 2024.08.17 |
Buyme TIL240813 기술적 의사결정 - 주문 상태 및 반품 상태의 세분화와 Enum 사용 (0) | 2024.08.14 |