728x90
- 현재 런칭 전인 프로젝트가 있어 부하테스트와 스트레스 테스트가 필요했다.
- 오토스케일링 테스트로도 필요한 툴로 인해 이번기회에 써보았다.
Apache-Jmeter
- 상황에따라 parameter을 넣어주신 후에 테스트할 사용자 및 반복횟수를 설정하여 성능을 확인할수 있습니다
- java런타임으로 java를 설치 해줘야된다. ( 버전에 맞게)
설치방법
- brew install jmeter
- 플러긴 파일도 다운받아opne /usr/local/bin 에 넣는다.!
- https://jmeter-plugins.org/install/Install/
Install :: JMeter-Plugins.org
Installing Plugins The easiest way to get the plugins is to install Plugins Manager. Then you'll be able to install any other plugins just by clicking a checkbox. If you experience any issues with plugins installation, don't hesitate to ask at Support Foru
jmeter-plugins.org
실행방법
- open /usr/local/bin/jmeter
사용방법
- Test Plan 클릭 후 ADD => thread 생성
- thread 생성
- 여러개의 request 생성가능 (한스레드안에 실행시 동시에 실행됨)
- 프로퍼티
- number of threads = 유저 수
- Ramp-up period = 몇초간 진행할건지
- loop count = 반복횟수
- ADD => Sampler => http Request 선택
- Http Request
- 프로토콜, ip 주소, 포트 넘버 입력
- API 기능 테스트시
- 메소드 , path 입력후 테스트
- head 값도 입력가능
- 스타트 버튼 클릭후 실행!
- 결과 도출 방법
- Test Plan
- 모든 thread 값에대한 결과물 도출
- Thread Group
- 모든 http request 에 대한 결과물 도출
- Http Request
- 해당 페이지에대한 결과물 도출
- Listener
- view Results tree
- 서버쪽에서 리턴해준값을 보여줌
- ThroughPut : 단위 시간당 서버에서 처리되는 요청의수 (TPS)
- latency : 요청을 보낸후 데이터를 받기 시작할 때까지 시간
- loadTime : 요청을 보내고 응답이 끝날때까지의 시간 (성능 테스트시 참조!!!)
- Summary Report
- samples : 접속수
- average : 평균 액세스
- min : 가장 빨리 끝난 액세스
- max : 가장 오래 끝난 액세스
- throughput : 초당 액세스 (높을수록 좋음)
- (err가 뜨면 서버에서 복잡한 일을 하지않기 때문에 높아질수밖에없음)
- error 값과 관련하여 분석 필요
- std.dev : 표준 편차
- 평균으로부터 각각에 요청시간이 얼마나 떨어져있는지
- 0 이면 모두 평균과 같은 시간을 사용
- 크다면 들쑥날쑥하다는 뜻
- Graph result
- data : 실제 접속한시간 (얼마나 소요됬는가)
- average : 평균값의 변화
- medium: 중앙값
- 편차 평균으로부터 얼마나 떨어져있는가
- view Results tree
- Test Plan
자세한 사용법은 밑에 블로그에 들어가서 보면 될거같다.!
'dev > 개발일지' 카테고리의 다른 글
GraphQl (0) | 2021.12.10 |
---|---|
프론트는 axios, 서버는 got (예정) (0) | 2021.11.26 |
winston, morgan 함께 사용하여 로깅남기기 (0) | 2021.08.16 |
clone_deep 깊은 복사 사용 후기 (0) | 2021.07.30 |
썸네일 og태그 추출 (0) | 2021.07.22 |