Linux WEB

웹부하 테스트 - httperf

2015.09.18 14:42

호스트웨이 조회 수:1627

httperf 은 웹서버에 부하를 발생 시켜 성능을 측정하는 도구입니다.


- 설치

[root@apm ]# tar zxvf httperf-0.9.0.tar.gz

[root@apm ]# cd httperf-0.9.0
[root@apm httperf-0.9.0]# ./configure
[root@apm httperf-0.9.0]# make && make install

- 옵션
[root@apm httperf-0.9.0]# httperf --help
Usage: httperf [-hdvV] [--add-header S] [--burst-length N] [--client N/N]
        [--close-with-reset] [--debug N] [--failure-status N]
        [--help] [--hog] [--http-version S] [--max-connections N]
        [--max-piped-calls N] [--method S] [--no-host-hdr]
        [--num-calls N] [--num-conns N] [--period [d|u|e]T1[,T2]]
        [--port N] [--print-reply [header|body]] [--print-request [header|body]]
        [--rate X] [--recv-buffer N] [--retry-on-failure] [--send-buffer N]
        [--server S] [--server-name S] [--session-cookies]
        [--ssl] [--ssl-ciphers L] [--ssl-no-reuse]
        [--think-timeout X] [--timeout X] [--uri S] [--verbose] [--version]
        [--wlog y|n,file] [--wsess N,N,X] [--wsesslog N,X,file]
        [--wset N,X]
[root@apm httperf-0.9.0]#

- 실행 예제
[root@apm httperf-0.9.0]# httperf --server=localhost --port=80 --num-conns=80000 --rate=100 --timeout=5 --think-timeout=5 --hog
httperf --hog --think-timeout=5 --timeout=5 --client=0/1 --server=localhost --port=80 --uri=/ --rate=50 --send-buffer=4096 --recv-buffer=16384 --num-conns=500 --num-calls=1
httperf: warning: open file limit > FD_SETSIZE; limiting max. # of open files to FD_SETSIZE
Maximum connect burst length: 1

Total: connections 500 requests 500 replies 500 test-duration 9.981 s

Connection rate: 50.1 conn/s (20.0 ms/conn, <=1 concurrent connections)
Connection time [ms]: min 0.1 avg 0.7 max 4.6 median 0.5 stddev 0.9
Connection time [ms]: connect 0.0
Connection length [replies/conn]: 1.000

Request rate: 50.1 req/s (20.0 ms/req)
Request size [B]: 62.0

Reply rate [replies/s]: min 50.0 avg 50.0 max 50.0 stddev 0.0 (1 samples)
Reply time [ms]: response 0.7 transfer 0.0
Reply size [B]: header 235.0 content 45.0 footer 0.0 (total 280.0)
Reply status: 1xx=0 2xx=500 3xx=0 4xx=0 5xx=0

CPU time [s]: user 1.29 system 8.69 (user 12.9% system 87.0% total 99.9%)
Net I/O: 16.7 KB/s (0.1*10^6 bps)

Errors: total 0 client-timo 0 socket-timo 0 connrefused 0 connreset 0
Errors: fd-unavail 0 addrunavail 0 ftab-full 0 other 0
[root@apm httperf-0.9.0]#

- 설명
httperf --server=localhost --port=80 --num-conns=800 --rate=100 --timeout=5 --think-timeout=5 --hog

localhost 주소의 서비에 80번 포트로 1초에 100개씩 800개의 접속을 시도 합니다. 또, 5초간 요청에 대한 응답이 없을 경우 timeout error로 처리 합니다.
웹 서버가 정상 요청 처리를 진행 할 경우 10초 후 결과가 확인 됩니다.

감사합니다.

번호 제목 글쓴이 날짜 조회 수
43 PHP 컴파일시 /usr/bin/ld: cannot find -lltdl 오류 호스트웨이 2012.07.13 9574
42 [Apache] Image 관련 Log 남기지 않기 호스트웨이 2012.07.13 7655
41 PHP 업로드 파일 용량 제한 설정 호스트웨이 2012.07.06 8638
40 SSL config error 조치사항 호스트웨이 2012.06.29 8237
39 Apache2.4.x 버전 설치 호스트웨이 2012.06.22 19923
38 PHP-5.3 버전 이상에서 Deprecated 에러 발생시 처리 방법 호스트웨이 2012.06.22 11666
37 PHP 속도 향상을 위한 eAccelerator 설치 호스트웨이 2012.06.15 9685
36 ZendOptimizer 3.3.9 설치 file 호스트웨이 2012.06.01 13982
35 웹페이지에 사용자 인증 사용하기 호스트웨이 2012.05.18 7558
34 apache ssl 시작시 오류 메세지 호스트웨이 2012.05.11 7993
33 mod_GeoIP를 이용한 국가 IP 확인 및 국가별 접속 제한 호스트웨이 2012.05.04 13304
32 apache에서 cgi를 사용하기 위한 설정 방법 호스트웨이 2012.04.27 12456
31 Zend Guard Loader 설치 호스트웨이 2012.04.20 14362
30 PHP에서 MS-SQL 서버를 연동하기 위한 방법 호스트웨이 2012.04.13 20715
29 Linux log 분할 방법 (logrotate) 호스트웨이 2012.04.06 10521
28 APM 및 OS 버전 확인 하는 방법 호스트웨이 2012.03.30 11940
27 phpize를 이용하여 모듈 추가 file 호스트웨이 2012.03.15 13400
26 mod_rewrite 모듈 설치 및 기본 사용법 sylee 2009.07.02 30216
25 아파치2 에서 mod_cband 사용법 sylee 2009.06.05 21776
24 register_globals 옵션에 따른 변수 전달 jook 2009.02.19 21243