Nota: O seguinte artigo irá ajudá-lo com: Como carregar o teste de seus sites com o Apache Bench
Qual é o desempenho dos seus sites? Você pode abrir um navegador da Web, apontá-lo para esses sites e verificar se estão funcionando, mas você realmente dedica um tempo para testar a carga desses sites para ver se eles estão atendendo aos padrões de alto desempenho de sua empresa (ou clientes? ) exigem? Se você não souber a resposta para essa pergunta, precisará começar a testar a carga dos sites que desenvolve ou istra.
Antes de pensar que isso é desafiador ou exigirá o pagamento de um serviço de terceiros, pense novamente. Existem muitas ferramentas para ajudá-lo a fazer esse trabalho, muitas delas de código aberto e gratuitas. Uma dessas ferramentas de código aberto é chamada Apache Bench.
O Apache Bench é capaz de testar mais do que apenas o servidor web Apache, pois qualquer servidor HTTP ou mesmo uma API (interface de programação de aplicativos) pode ser testada com esta ferramenta.
Eu quero mostrar a você como instalar o Apache Bench e usá-lo para carregar o teste de um site. Vou demonstrá-lo no Ubuntu 22.04, mas ele pode ser instalado em praticamente qualquer distribuição Linux. Saiba que o Apache Bench é uma ferramenta de linha de comando, mas na verdade é bem simples de usar.
Dito isso, vamos ao trabalho.
VEJA: Kit de contratação: Desenvolvedor Back-end (TechRepublic )
O que você precisará
Para acompanhar, você precisará de uma instância em execução do Ubuntu Linux. Isso pode ser Ubuntu Server ou Desktop e pode ser qualquer versão. Você também precisará de um usuário com privilégios sudo e um site para testar.
Como instalar o Apache Bench
A primeira coisa que devemos fazer é instalar o Apache Bench. Faça na sua instância do Ubuntu Linux, abra uma janela de terminal e emita o comando:
Caso você esteja usando uma distribuição baseada em RHEL, como o Fedora Linux, esse comando seria:
A instalação deve ocorrer sem problemas. Depois de concluído, você está pronto para carregar o teste de um site.
Como carregar o teste com o Apache Bench
O comando Apache Bench requer algumas opções para ser executado. As opções mais usadas incluem:
- -n: o número de solicitações
- -c: O número de solicitações simultâneas
- -H: Adicionar cabeçalho
- -r: Não saia em erros de recebimento de soquete
- -k: usa o recurso HTTP KeepAlive
- -p: Arquivo contendo dados para POST
- -t: O tempo máximo para gastar o benchmarking
- -T: cabeçalho do tipo de conteúdo a ser usado para dados POST/PUT
Um teste simples seria algo assim:
Onde está o domínio ou endereço IP do servidor.
O / à direita é obrigatório ou o teste ab falhará. Digamos que você tenha um site de desenvolvimento que está testando no endereço IP 192.168.1.11 e deseja executar um teste de carga ab simples. Esse comando seria:
Os resultados desse comando podem ser algo assim:
A maior parte da saída é bastante auto-explicativa. A metade inferior pode precisar de um pouco de compreensão. Na saída que você vê acima, 50% das solicitações levaram 297 ms, 66% das solicitações levaram 312 ms ou menos e assim por diante. Algo está claramente errado com este site, pois os tempos de resposta devem ser mais rápidos.
Ou digamos que você tenha um site específico em uma porta específica que deseja testar. Esse comando pode ficar assim:
Se você também quiser adicionar os cabeçalhos gzip e deflate no mix, bem como adicionar KeepAlive e garantir que o comando não saia em um erro de recebimento de soquete, esse comando pode ficar assim:
De repente, você pode ver uma saída que inclui algo assim:
Vamos bater um pouco mais forte e limitar o tempo gasto no benchmarking com um comando como este:
Isso levará um pouco mais de tempo porque estamos atingindo 10.000 solicitações e 100 solicitações simultâneas.
E isso é praticamente tudo o que você precisa para testar seus servidores web a partir da linha de comando. Para saber mais sobre o que o comando ab pode fazer, certifique-se de ler a página man com o comando man ab.