Apache Jmeter

연수·2022년 3월 6일
0

architecture

목록 보기
6/7

✔️ Apache Jmeter

웹 애플리케이션을 중심으로 다양한 서비스의 성능을 분석하고 측정하기 위한 부하 테스트 도구

 

✔️ 성능 테스트의 종류

  • Load(부하)테스트 : 부하를 순차적으로 증가시켜 응답시간이 급격히 증가하거나 처리량의 문제, CPU 또는 Memory 사용량이 문제가 생기는 임계점을 찾아내는 테스트
  • Stress 테스트 : 임계값 이상의 요청이나 비정상적인 요청을 보내서 처리를 확인하고 시스템의 성능 한계치를 측정하는 테스트
  • Spike 테스트: 사용자가 갑자기 몰렸을 때 요청이 정상적으로 처리되는지, 업무 부하가 줄어들 때 정상적으로 반응하는지 확인하는 테스트
  • Stability/Soak 테스트 : 긴 시간 동안 테스트를 진행하며 시간이 지남에 따라 메모리와 성능 정보에 대한 변화를 관찰하는 테스트
  • 가용성 테스트 : 이중화가 되어 있는 경우 한쪽 서버를 다운시켰을 때에도 제대로 작동하는지 확인하는 테스트

 


🕸️ WEB

✔️ WEB 접속 부하 테스트

  • WEB 작업 개수 : Fargate 2개

  • AutoScaling 측정치 : ALBRequestCount(70%)

  • 10분 간 초 당 약 1,000개의 접속 부하 생성

  • 사용자(스레드) 약 20,000명

  • TPS

  • Response Time

 

👉 결과 정리

  • 불안정한 TPS
    • 20,000명의 동시 사용자에 대해 약 29,240의 TPS 처리 가능
  • HTTP Request 에러 발생
  • 에러가 발생하기 시작하자 오토 스케일링 발생 (작업 개수 2개 → 5개로 증가)
  • 작업 개수 증가 후 request 에러가 줄어드는 것을 확인할 수 있었다.

 

✔️ Scale Up된 상태에서 같은 조건으로 테스트 재진행

  • TPS

  • Response Time

  • 20,000명의 동시 사용자에 대해 약 92,000의 TPS 처리 가능

  • HTTP reqeust 에러 발생률 0%로 감소

 


💨 WAS

✔️ WAS 로그인 부하 테스트

  • WAS 작업 개수 : Fargate 2개

  • AutoScaling 측정치 : AverageCPUUtilization(70%)

  • 10분 간 초 당 약 1,000개의 접속 부하 생성

  • 사용자(스레드) 약 20,000명

  • TPS

  • Response Time

  • CPU Utilization


 

👉 결과 정리

  • 불안정한 TPS 및 reqpest 에러 발생
    • 20,000명의 동시 사용자에 대해 약 16,300의 TPS 처리 가능
  • CPU 사용률의 급격한 증가에 따른 오토 스케일링 발생 (작업 개수 2개 → 4개로 증가)

 

✔️ Scale Up된 상태에서 같은 조건으로 테스트 재진행

  • TPS

  • Resposne Time

  • CPU Utilization

  • 20,000명의 동시 사용자에 대해 약 38,000의 TPS 처리 가능

  • CPU 사용률 안정적인 수준으로 감소

 


✔️ Scale In

  • 부하가 줄어들자 작업 개수 2개로 Scale In되는 것까지 확인

 

profile
DCDI

0개의 댓글