Spring MVC vs Webflux 간단 성능테스트

gyu·2024년 6월 25일

논블로킹과 비동기 환경을 제공하는 Webflux가 Spring MVC에 비해 얼마나 처리율이 높은지 간단한 성능 테스트를 진행해보자.

테스트 방법

Webflux, Spring MVC 환경의 SpringBoot 애플리케이션을 각각 구성하여 4초 sleep후 문자열 결과를 반환해주는 외부 API를 반복적으로 호출한다.
JMeter를 사용하여 사용자 수를 늘려가며 테스트를 진행한다.

1. Test Case 1 (사용자: 1,000명)

Spring MVC 결과

  • 소요시간: 20초
  • TPS: 49.2
  • 에러율: 0%

Webflux 결과

  • 소요시간: 20초
  • TPS: 49.4
  • 에러율: 0%

2. Test Case 2 (사용자: 2,000명)

Spring MVC 결과

  • 소요시간: 40초
  • TPS: 49.6
  • 에러율: 2.6%

Webflux 결과

  • 소요시간: 27초
  • TPS: 71.0
  • 에러율: 38%

3. Test Case 3 (사용자: 3,000명)

Spring MVC 결과

  • 소요시간: 28초
  • TPS: 106.3
  • 에러율: 57.4%

Webflux 결과

  • 소요시간: 48초
  • TPS: 61.5
  • 에러율: 20%

0개의 댓글