ssung_항해일지/항해99_실전 프로젝트

실전 프로젝트 - 14일차

ssungcohol 2023. 3. 24. 02:28

JMeter

 

where = 조건절

기존 sql는 string이여서 넣고빼기가 힘듦

Jmeter 정리
Apache JMeter는 서버가 제공하는 성능 및 부하를 측정하는 테스트 도구
순수 Java 어플리케이션 오픈소스로 서버나 네트워크 또는 개체에 대해 과부하를 시뮬레이션 하여 강도를 테스트 하거나 다양한 부하 유형에서 전체 성능을 분석

특징
 - 다양한 프로토콜/서버를 테스트 가능
웹(HTTP/HTTPS)
SOAP/REST 웹 서비스
FTP
데이터베이스
Mail...

 - CLI 지원
CI CD 툴과 연동할 때 편리
UI를 사용하는것 보다 메모리 등 시스템 리소스를 적게 사용
성능 테스트 자동화 가능
 
 - 시나리오 기반 테스트 가능
 - 다양한 외부 플러그인 사용하여 기능 확장 가능

주요개념
 - Thread Group : 몇개의 쓰레드가 동시에 요청을 보내는지
* 몇개의 쓰레드(유저 수)로 테스트 가능 (Number of Threads)
* 쓰레드(유저 수) 만큼의 쓰레드를 몇초에 걸쳐서 만들지(Ramp-up period)
* 몇번 반복 요청 횟수 지정 가능 (Loop Count)

 - Sampler : 어떤 유저가 해야하는 액션


 - Listener : 응답을 받았을 때 어떤 동작을 취하는지 (검증, 레포트, 그래프 그리기 등)

 - Configuration : Sampler, Listener가 사용할 설정 값 (쿠키, JDBC 커넥션)

 - Assertion : 응답 결과의 성공 여부를 판단하는 조건


성능테스트
 - Load Test
시스템 성능을 벤치마크 하기위한 테스트
Load(부하)를 순차적으로 증가시키면서 응답시간이 급격히 증가하거나 더는 처리량이 증가하지 않거나 시스템의 CPU와 Memory 등이 기준값 이상으로 증가하는 증 비정상 상태가 발생하는 접점(임계점)을 찾아내고 이를 바탕으로 성능 이슈에 대한 튜닝과 테스트를 반복

 - Stress Test
임계값 이상의 요청이나 비정상적인 요청을 보내 비정상적인 상황의 처리 상태를 확인하고 시스템의 최고 성능 한계를 측정하기 위한 테스트

 - Spike Test
갑자기 사용자가 몰렸을 때 요청이 정상적으로 처리되는지 그리고 그 업무 부하(Workload)가 줄어들 떄 정상적으로 반응하는지 확인하기 위한 테스트

 - Stability / Soak 테스트
긴 시간동안 테스트를 진행해서 테스트 시간에 따른 시스템의 메모리 증가, 성능 정보의 변화를 확인하는 테스트

도전 내용
동시 검색 or 동시 주문 테스트를 진행 및 시각화를 통해
안정적인 검색 성능과 주문

728x90