<aside> 🏳️
링크(자세한 설명)
TIL/portfolio/메인 API 성능 개선.md at main · Hansanghyun-github/TIL
</aside>
스핀로그 프로젝트에서 제일 많이 호출되는 API인 메인 API에 대한 성능을 개선해본다.
(메인 API는 사용자의 인증 후, 바로 호출되는 API)
nGrinder를 이용해 100명의 vuser가 20분 동안 메인 API 요청을 통해 부하를 줬을 때,
해당 API의 TPS를 이용해 성능을 측정한다.
메인 API의 TPS는 30이 나왔다.
어디서 병목이 발생했는지 Prometheus & AWS CloudWatch & VisualVM을 이용해 분석해봤다.
WAS의 CPU 사용량이 거의 100%에 육박했다.
(DB 서버의 CPU 사용량은 약 20%가 나왔다)
그리고 GC에 의한 CPU 사용량이 약 35%정도 나타났다.
→ WAS에서 CPU 병목이 발생하고, (1) 잦은 GC도 문제인 것으로 (2) 확인된다.