대머리개발자

webFlux VS webMVC(2) 본문

개발이야기/성능

webFlux VS webMVC(2)

대머리개발자 2023. 3. 2. 22:14
728x90

일단 아르메리아가...핀포인트에 요청이 정상적으로 집계되지 않아서... ㅠ

단순 스프링으로 전환해서 진행하였다. (이것도 일이다. ㅡㅡㅎ) 아오!!!

 

일단 이미 결과를 리포팅 했지만 이제서야 글을 정리한다

 

진정 하는것 없이 바쁘다

 

논-블록킹으로 처리 되는 서비스에서만 유용하기 때문에 무조건적으로 좋은 것이 아니다...

오히려 블록킹이되는 코드가 있으면 역효과가 날 수 있기 때문에..무조건적으로 도입할 이유는 없다.

 

두가지 케이스가 같은 response을 주긴 하지만 

1. webMvc는 스프링 시큐리티에서 제공해 주는 Oauth를 이용하였고

2. webFlux는 딱 원하는 기능만 자체 개발했기 때문에 비교 자체가 애매 하긴 하지만 우리가 얼마나 웰메이드 된 친구보다 효율적으로 만들었는지 증거가 될 수 있기에 비교 대상으로 !! 

 

시나리오는 Oauth2.0의 인증방식 중 하나인 "권한코드 부여방식"을 하드코딩하여 진행하였다.

 

1. 권한코드 부여 받고

2.권한코드를 통해서 토큰 발급 받는다.

스프링 시큐리티에서 제공해주는 Oauth의 경우 배민의 블로그에도 있듯이 jdbc 연결이 무지막지하다. 모든 부분을 레디스로 커버하지 않고 클라이언트 가져오는 부부만...AOP를 통해서 캐쉬 처리 진행하였다.

 

내가 만든 인증서버는 클라이언트, 사용자 모두 레디스 처리하였기 때문에 최초 2번의 쿼리 이후 전부 레디스를 통한다.

 

모든면에서 논-블로킹 형태의 개발이 리소스의 활용면이나 퍼포먼스가 우세하다.!! 판정승 정도가 아니라 KO승!! 

물론 위에서 언급했듰이 블로킹이 없는 서비스에서 유리!!(파일 업/다운로드... 블로킹 되겠지... 타 시스템의 API 기둘하겠지...)

 

최초 아르메리아가  TPS에서 느렸던 이유는 코드 자체의 문제 ㅋㅋ ㅠㅠ 개똥코드!!

결과가 제대로 나온다고 방식하지 말자... 우리는 백만명이 사용하는 서비스를 만든다고 생각하고 개발하자 ㅋㅋ

728x90

'개발이야기 > 성능' 카테고리의 다른 글

이벤트 서버의 성능 테스트 시작(4)  (1) 2023.11.25
이벤트 서버의 성능 테스트 시작(3)  (1) 2023.11.23
webFlux VS webMVC(1)  (0) 2023.02.09
webFlux VS webMVC(준비)  (0) 2023.02.02
로깅서버 성능 테스트  (1) 2022.10.07