SW-PRODUCT/개발-SWE

Stress Test

굴돌 2015. 3. 12. 10:36



개요

  • 임의로 사용량을 높여서 서비스가 얼마나 견디는지를 테스트한다.
  • 얼마나 처리 가능한지, 과부하 시 대응 능력 등을 확인한다.

apache ab

  • 사례) http://issue.daumcorp.com/browse/MOBILETR-1642
    샘플) Spring AOP 스트레스 테스트
    읽기 : http://maa.hosts.daum.net/mobileapps/devel/springtest.html?pf=iphone
    ㄴ db에서 공지사항을 읽어옴.
    쓰기 : http://maa.hosts.daum.net/mobileapps/devel/springtest.html?pf=iphone&mode=ROLLBACK
    ㄴ db에서 공지사항을 읽어온 후에 첫번째 게시물의 이름을 수정하고 exception을 던져서 rollback 시킴.
    ./ab -t 10 -c 10 http://maa.hosts.daum.net/mobileapps/devel/springtest.html?pf=iphone&mode=GET
    ㄴ 평균 20.62. #/sec 484.83
    ./ab -t 10 -c 1000 http://maa.hosts.daum.net/mobileapps/devel/springtest.html?pf=iphone
    ㄴ 평균 3361 ms. 297.49 #/sec.
    ./ab -n 10000 -c 50 http://maa.hosts.daum.net/mobileapps/devel/springtest.html?pf=iphone&mode=GET
    ㄴ 평균 83.879 ms, 초당 596 req/sec
    ㄴ 평균 171 ms, 초당 292 req/seq
    ./ab -n 10000 -c 50 http://maa.hosts.daum.net/mobileapps/bada/system/init.xml?installedVersion=0.5
    ㄴ 평균 42.094 ms, 초당 1187 req/sec

JMeter

  • 간단한 스트레스 테스트에 적당하다.
  • 하나의 java application 형태로 되어 있으며, 처리 결과를 쉽게 그래프로 볼 수 있다.



Grinder

  • 대량의 트래픽을 발생시키는 테스트에 적당하다.
  • 사용자가 사용하는 콘솔(console)과 실제 여러 쓰레드로 요청을 날리는 agent를 별도로 설치하여 운영 가능하다.
  • TechAsset의 품질관리 파트에서 agent용 서버를 제공하고 있음.