Linux WEB

ab 사용방법

2008.05.15 01:43

sylee 조회 수:28901

[ab 사용방법]

ab는 Apache Web server의 상태를 측정하는 툴이며 초당 Apache server가 얼마나 많은 요청을 처리할수 있는지를 측정할수 있다.

[옵션]
-k
HTTP KeepAlive (연결 지속성) 요소를 사용 가능 하게 한다. 이것은 하나의 HTTP session에서 여러 개의 요청을 처리할 수 있다.
기본값은 연결 지속성 기능을 사용하지 않는다.
-i
GET 방식 대신에 HTTP 'HEAD'를 사용한다. POST와 섞어서 사용할수 없다.
-n 요청수 (request)
측정을 하기 위한 요청수를 지정한다. 따로 지정하지 않는다면 하나의 요청만이 수행된다.
-t 시간제한
측정을 어느 정도까지 할 지 초단위로 지정한다. 따로 지정하지 않으면 측정 세션에 대해서 50000개의 요청을 자동으로 정의한다.
고정된 시간 동안 서버를 측정하기 위하여 사용한다. 기본적으로 시간을 제한하지는 않는다.
-c 동시접속수
동시에 요청을 처리할 수 있는 수량을 지정한다. 기본값으로는 한번에 하나의 요청만을 수행한다.
즉 동시 접속을 하지 않는다는 의미이다.

-p POST file
아파치 웹서버에 어떠한 HTTP POST 요청을 보내기 위한 data를 가진 파일을 지정한다.

-A Authorization username:password
서버로 신용증명을 하는 기본 인증을 지원한다. 사용자 이름과 패스워드는 하나의 ':'로 구분하고, uuencoded로 변환한 데이터를 보낸다. 문자열은 서버가 필요로 하든 안하든 상관없이 보내며, 401 인증을 보내는 것을 필요로 한다.

-p Proxy-Authorization username:password
프락시 서버로 신용증명을 하는 기본 인증을 지원한다.
사용자 이름과 패스워드는 하나의 ':'로 구분하고, uuencoded로 변환한 데이터를 보낸다. 문자열은 프락시가 필요로 하든 안하든 상관없이 보내며, 407 인증을 보내는 것을 필요로 한다.

-C Cookie name=value
요청에 'Cookie:' line을 추가한다. 이 인자는 'name=value'의 형태를 가진다. 이 옵션은 반복된다.

-H Header string
요청에 임의의 헤더를 추가한다. 이 인자는 유효한 헤더의 형태를 가지며, 보통 하나의 쌍으로 이루어진 필드 값을 콜론(:)으로 구분을 한다.

-T content-type
POST data에 대한 content-type header를 지정한다.

-v
출력 레벨을 지정한다. 4단계는 결과값 상단에 HTML 헤더를 출력하며, 3단계는 결과물 상단에 응답 코드(예를 들어 404, 200등)를 출력하며, 2단계는 경고와 정보 메세지를 출력한다.

-w
HTML table로 결과물을 출력한다. 기본 table은 2칼럼이며 흰색 바탕이다.
-x attributes
<table> 에 대한 속성을 지정한다. 속성은 <table 속성> 과 같이 들어간다.
-y attributes
<tr>에 대한 속성값을 지정한다.
-z attributes
<td>에 대한 속성값을 지정한다.
-V
버전 정보를 출력하고 프로그램을 종료한다.
-h
사용법에 대한 정보를 출력한다.


[사용예제]

# /usr/local/apache/bin/ab -n 100 -c 10 http://www.domain.com/
10 명의 유저가 동시에 http://www.domain.com/ 을 요청
각각의 시뮬레이트 유저는 요청을 10 번씩 하게 됩니다.

# /usr/local/apache/bin/ab -n 1500 -c 50 http://www.domain.com/
요청을 30 x 50   (50 명의 사용자가, 각각 30 번의 요청)

결과예)
Benchmarking www.domain.com (be patient).....done
Server Software:                           ---> 아파치 버전표시                                
Server Hostname:        www.domain.com  ---> 특정사이트의 도메인명
Server Port:            80                        ---> 웹서비스 사용포트
Document Path:          /                ---> 초기문서가 존재하는 웹문서 root 위치
Document Length:        0 bytes                ---> 초기문서의 용량크기(index.html)
Concurrency Level:      10
Time taken for tests:   0.013 seconds        ---> 응답시간 (매우 중요한 결과값임)
Complete requests:      100                ---> 요구에 응답완료한 세션수
Failed requests:        100                ---> 요구에 응답실패한 세션수
   (Connect: 100, Length: 0, Exceptions: 0)
Broken pipe errors:     0
Total transferred:      0 bytes                ---> 총 전송바이트수
HTML transferred:       0 bytes                ---> 총 전송한 html 바이트수
Requests per second:    7692.31 [#/sec] (mean)   ---> 초당응답요구수
Time per request:       1.30 [ms] (mean)        ---> 요구에 응답한 시간

Time per request:       0.13 [ms] (mean, across all concurrent requests)
Transfer rate:          0.00 [Kbytes/sec] received

Connnection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0     1    0.4      1     3
Processing:     0     0    0.0      0     0
Waiting:        0     0    0.0      0     0
Total:          0     1    0.4      1     3

Percentage of the requests served within a certain time (ms)
  50%      1
  66%      1
  75%      1
  80%      1
  90%      1
  95%      2
  98%      2
  99%      3
100%      3 (last request)
번호 제목 글쓴이 날짜 조회 수
43 PHP 컴파일시 /usr/bin/ld: cannot find -lltdl 오류 호스트웨이 2012.07.13 12560
42 [Apache] Image 관련 Log 남기지 않기 호스트웨이 2012.07.13 9705
41 PHP 업로드 파일 용량 제한 설정 호스트웨이 2012.07.06 10044
40 SSL config error 조치사항 호스트웨이 2012.06.29 9632
39 Apache2.4.x 버전 설치 호스트웨이 2012.06.22 23694
38 PHP-5.3 버전 이상에서 Deprecated 에러 발생시 처리 방법 호스트웨이 2012.06.22 14734
37 PHP 속도 향상을 위한 eAccelerator 설치 호스트웨이 2012.06.15 11264
36 ZendOptimizer 3.3.9 설치 file 호스트웨이 2012.06.01 17546
35 웹페이지에 사용자 인증 사용하기 호스트웨이 2012.05.18 8972
34 apache ssl 시작시 오류 메세지 호스트웨이 2012.05.11 10058
33 mod_GeoIP를 이용한 국가 IP 확인 및 국가별 접속 제한 호스트웨이 2012.05.04 19944
32 apache에서 cgi를 사용하기 위한 설정 방법 호스트웨이 2012.04.27 20138
31 Zend Guard Loader 설치 호스트웨이 2012.04.20 17830
30 PHP에서 MS-SQL 서버를 연동하기 위한 방법 호스트웨이 2012.04.13 25311
29 Linux log 분할 방법 (logrotate) 호스트웨이 2012.04.06 12593
28 APM 및 OS 버전 확인 하는 방법 호스트웨이 2012.03.30 13990
27 phpize를 이용하여 모듈 추가 file 호스트웨이 2012.03.15 15586
26 mod_rewrite 모듈 설치 및 기본 사용법 sylee 2009.07.02 38427
25 아파치2 에서 mod_cband 사용법 sylee 2009.06.05 24558
24 register_globals 옵션에 따른 변수 전달 jook 2009.02.19 34737