E aí Siege, tudo beleza com o meu site?

Não sabe o que é Siege? Relax que o dog te conta:

 

pommie sm E aí Siege, tudo beleza com o meu site?Siege is an http load testing and benchmarking utility. It was designed to let web developers measure their code under duress, to see how it will stand up to load on the internet.

(Siege)

Eu estava precisando fazer um teste de performance em uma aplicação web, e não sabia por onde começar, então segui os conhecimentos do vermelho. E fui estudar no Code-Squad e encontrei uma video aula batuta sobre o Siege.

Então vai lá assistir e ai você volta aqui, beleza?

Agora que você já foi, o lance é o seguinte, como usar o Siege se eu tenho uma página bonitona de login? Pois para o Siege chegar na página que você quer entupir de acesso você precisa logar, certo?

Primeiro você tem que criar o arquivo de config dele, é executar:

siege.config

Você vai ter um retorno mais ou menos assim:

New configuration template added to /home/porkaria/.siegerc
Run siege -C to view the current settings in that file

Agora filhote, é só você editar o arquivo e ir na linha 330 que você já vai ver o seguinte exemplo:

# ex: login-url = http://eos.haha.com/login.jsp POST name=jeff&pass=foo

Precisa explicar mais? não precisa né? Descomenta, altera e roda o bicho!

Segue um exemplo que eu fiz para um cliente:

siege -c 100 -r 10 -d 1 http://seusistema/sua/pagina/teste

Esse teste é para rodar 10 vezes com 100 usuários concorrentes acessando “sua/pagina/teste” do sistema e com o delay de resposta 1 segundo. Saca só o resultado:

Transactions: 2000 hits
Availability: 100.00 %
Elapsed time: 59.70 secs
Data transferred: 1.24 MB
Response time: 2.15 secs
Transaction rate: 33.50 trans/sec
Throughput: 0.02 MB/sec
Concurrency: 72.16
Successful transactions: 2000
Failed transactions: 0
Longest transaction: 11.78
Shortest transaction: 0.36

O mais legal de observar são os resultados Failed transactions e Longest transaction, acredito que daí é um bom ponto de partida. Agora é só você regaçar de testar e ver a coisa toda pipocando.