Recentemente me deparei com o cenário onde precisava executar um teste de performance e gostaria de fazer isso utilizando alguma ferramenta simples.
Encontrei 2 ótimas soluções por linha de comando:
ApacheBench
A primeira faz parte do pacote Apache e é executada pelo comando ab:
ab -n 10 -c 5 http://localhost:8080
Onde estou fazendo 10 requests, com 5 usuários concorrentes na url http://localhost:8080.
Outros comandos podem ser encontrados com a opção help:
ab --help
Siege
A outra opção que utilizei foi a ferramenta Siege. Ela é uma ferramenta Open Source, criada por JoeDog e tem seu fonte disponível no GitHub.
O comando do siege é bem parecido com o ab:
siege -b -t60S http://localhost:8080
Onde estou executando o testes de benchmark, durante 60 segundos na url http://localhost:8080.
Caso você necessite de uma ferramenta mais elaborada, existem ótimas opções:
- Jmeter – http://jmeter.apache.org/
- Gatling – http://gatling.io/
- Locust – https://locust.io/
- Rakyll/Boom – https://github.com/rakyll/hey
Veja também http://alternativeto.net/software/Jmeter
Fontes:
https://httpd.apache.org/docs/2.4/programs/ab.html
https://github.com/JoeDog/siege
https://www.digitalocean.com/community/tutorials/how-to-use-apachebench-to-do-load-testing-on-an-ubuntu-13-10-vps
https://blazemeter.com/blog/open-source-load-testing-tools-which-one-should-you-use