quinta-feira, 26 de janeiro de 2012

Teste o desempenho do servidor Web com AB

AB é um programa de linha de comando que vem junto com o Apache2. Ele serve para testar o desempenho do servidor web (não só Apache).

Seu uso é muito simples. A forma mais comum é a seguinte:


# ab -n 100 -c 10 http://localhost/index.html


O parâmtreo "-n" refere-se ao número de requisições que serão enviadas, enquanto que o "-c" refere-se ao número de requisições simultâneas. Para outras opções, consulte "ab --help". Repare também que eu utilizei um endereço de web completo, incluindo um arquivo (index.html). Você pode estar com um arquivo específico, um script cgi ou php, um arquivo para download, etc.

Abaixo a saída do comando acima.


This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking localhost (be patient).....done


Server Software:        Apache/2.2.16
Server Hostname:        localhost
Server Port:            80

Document Path:          /index.html
Document Length:        177 bytes

Concurrency Level:      10
Time taken for tests:   0.221 seconds
Complete requests:      100
Failed requests:        0
Write errors:           0
Total transferred:      45400 bytes
HTML transferred:       17700 bytes
Requests per second:    453.03 [#/sec] (mean)
Time per request:       22.074 [ms] (mean)
Time per request:       2.207 [ms] (mean, across all concurrent requests)
Transfer rate:          200.85 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    1   0.3      1       1
Processing:     0   21  61.4      1     205
Waiting:        0   20  59.2      1     205
Total:          1   22  61.4      2     206

Percentage of the requests served within a certain time (ms)
  50%      2
  66%      2
  75%      2
  80%      2
  90%    205
  95%    205
  98%    205
  99%    206
 100%    206 (longest request)


No Debian, para instalá-lo, basta instalar o pacote apache2-utils.

$ apt-get install apache2-utils