Jmeter를 통한 스트레스 테스트

Hyuk·2023년 9월 4일
0

HappyScrolls 개발기

목록 보기
10/24
post-thumbnail

내 어플리케이션이 얼마나 뛰어난 성능을 갖고 있는지, 혹은 얼마나 안좋은 성능을 갖고 있는지 알기 위해 그라파나 + 프로메테우스 + Jmeter 구성을 갖고 실험해보았다.

클라우드 상에서 테스트를 하면 N백만원이 과금될수도 있기 때문에 로컬상에서 진행했다.

적당..하다고 생각되었는데 충격적인 결과가 나왔다. 약 3000명이 접속했을 때 절반 이상이 오류를 접하면 서비스 될 수 없는 서비스지 않을까 싶었다.

그래서 급하게 스프링부트 인스턴스를 두개 더 띄우고 nginx로 로드밸런싱을 해주었다.


위와 같은 설정을 갖고 80번 포트에 접근했을 때, 8080,8081,8082 포트가 라운드 로빈 형식으로 바껴가면서 응답된다. 따라서 인스턴스의 과부하가 줄어들 것이라 기대했다.


결과는 위와 같다. 많이 오류 비율이 줄었음을 알 수 있다.
하지만 여전히 오류 비율이 높다.

원인은 무엇이었을까???
아직은 성능 측정 툴에 익숙치 않아 정확한 이유는 알 수 없다.

추측이긴 하지만 로컬에서 진행했고,

따라서 하나의 물리 서버에서 진행했고 물리 서버를 늘린것이 아니라 프로레스 개수를 늘린것이라 각각의 프로세스의 과부하를 조금 줄이기만 했을것이라 생각된다.
또한 현재 스프링부트 프로세스가 제한된 물리 자원을 사용하는게 아니기 때문에 더욱 인스턴스를 늘린 것에 대한 효과가 적었을 것이라 생각된다.
따라서 프로세스 개수가 아닌 물리 서버를 늘리는게 직접적으로 효과가 있을것이라 생각된다.

profile
🙂 🙃 🙂 🙃

0개의 댓글