티스토리 뷰

IT & Programming

JMeter에 대한 간단한 정리

시부야에 사는 사람 2017.03.01 16:27
tumblr 에서 만든 Web Framework 인 Colossus 를 만지작 거리며 글을 많이 쓰게 되는 거 같다.
Colossus 성능 테스트를 하며 내가 헷갈렸던 가장 기본적인 것을 정리해 보고자 한다.
Logic Controller 와 같은 복잡한 것은 안쓸 것이다.


일단 Number of Threads와, Ramp-Up Period, Loop Count 이 세곳만 숫자를 넣어주자.
Ramp-Up Period 가 뭔지 굉장히 헷갈릴 수 있다. 쓰레드가 추가되는 시간? 뭔지 알기가 어렵다. 
간단히 알아보자. 
총 테스트 수  = Number of Thread * Loop Count
1초에 실행되는 테스트 수 = 총 테스트 수 / Ramp-Up Period
위의 경우에는 총 테스트 수가 900000, 그 테스트를 60초 내로 완료한다는 것이다. 따라서, 매초 15000리퀘스트를 60초동안 보낸다는 것.


테스트 내용이다. 127.0.0.1:1234/home 에 파라미터를 추가해서 Get Http Method 로 보낸다. 물론 내가 테스트 할 때는 제대로 된 주소를 넣어줬다.

듀얼코어 머신에 Colossus로 서버를 만들어서, JMeter 로 테스트를 해보았다.

Number of Thread : 200, Ramp-Up Period : 60, Loop-Count = 3000 => 매초 10000리퀘스트를 60초간 보낸다.
녹색 박스는 reponse수 와 돌아오는데 까지 걸린 시간, 파란색 박스는 단순히 나눈 것으로 throughput, 노란색 박스는 response time 으로 단위는 ms 이다.


Number of Thread : 200, Ramp-Up Period : 60, Loop-Count = 3600 => 매초 12000리퀘스트를 60초간 보낸다.
서버를 괴롭혀본 결과 throughput 은 5000을 넘는 것으로 나오기에 성능에는 문제가 없는 것으로. 
결과가 한번에 깔끔하게 나오는게 아닌것은, JMeter 가 중간 결과를 간간히 보여주기 때문인 것으로 보인다.

웹 프로그래밍을 아직 잘 몰라서.. 테스트 할 때의 thread 수가 너무 적은건지, Loop-Count 나 Ramp-Up Period 의 수치가 좋지 않은지 태글 환영.


댓글
댓글쓰기 폼