Continuamos nossa série de materiais dedicados ao teste de desempenho do servidor. Hoje falaremos sobre alguns benchmarks testados pelo tempo que ainda oferecem suporte e atualização - NetPerf, HardInfo e ApacheBench.
 Foto - Peter Balcerzak - CC BY-SA
 Foto - Peter Balcerzak - CC BY-SAEsta é uma ferramenta para avaliar a largura de banda da rede. Foi desenvolvido por engenheiros da Hewlett-Packard. A ferramenta 
inclui dois executáveis: netserver e netclient. Para executar o teste, eles precisam ser executados em máquinas diferentes. Por padrão, o netperf usa a porta 12865, mas pode ser substituída pelo sinalizador -p. O utilitário trabalha com TCP e UDP sobre soquetes BSD, DLPI, soquetes de domínio Unix e IPv6.
Hoje o 
netperf faz parte do 
kit de ferramentas de benchmarking do 
Flent . Também é usado por um número bastante grande de empresas de TI, 
como a Red Hat . Aqui está uma descrição do serviço netperf em um exemplo para avaliar o desempenho do OpenShift:
apiVersion: v1 kind: Service metadata: labels: app-name: netperf name: netperf namespace: your_project spec: ports: - port: 12865 protocol: TCP targetPort: 12865 selector: app-name: netperf sessionAffinity: ClientIP type: ClusterIP 
O repositório oficial diz que o netperf está licenciado sob uma licença especial da Hewlett-Packard. No entanto, o autor do utilitário - Rick Jones (Rick Jones) - afirma que ele está enquadrado nas melhores tradições de código aberto. Observe também que as atualizações recentes do netperf saem muito raramente. Talvez isso se deva à maturidade do produto.
O Netperf possui análogos - por exemplo, 
iperf2 e 
iperf3 . Eles também permitem testar a largura de banda da rede. O desenvolvimento do iperf3 começou depois que o repositório iperf2 caiu em desuso. A nova versão foi escrita do zero e é incompatível com a implementação anterior, embora contenha parte do seu código. Curiosamente, após o lançamento do iperf3, o trabalho no iperf2 começou a ferver novamente. Como resultado, as duas ferramentas 
têm funcionalidades semelhantes, mas ao mesmo tempo diferentes. Por exemplo, o iperf2 é multiencadeado e o iperf3 
funciona apenas com um encadeamento.
Este é um utilitário para coletar informações sobre hardware e sistema operacional. Ele exibe dados sobre a operação de dispositivos em: PCI, ISA PnP, USB, IDE, SCSI, bem como portas seriais e paralelas. Mas pode ser usado como uma ferramenta de referência e monitoramento.
HardInfo oferece vários testes. Por exemplo, CPU Blowfish - avalia o desempenho do processador usando algoritmos de criptografia simétrica em bloco criptográfico. Existe um 
CPU N-Queens - um teste da combinatória. O sistema resolve o problema do xadrez ao colocar N rainhas no tabuleiro de N x N células. Ela arruma as peças para que nenhuma delas possa atacar as outras. Também vale a pena notar o FPU FFT - um teste para o cálculo rápido da transformada de Fourier discreta e o FPU Raytracing - o cálculo do traçado de raios ao renderizar uma cena 3D.
O resultado na maioria dos testes é dado em segundos e, consequentemente, quanto menor, melhor. Todos os relatórios são mostrados nos formatos HTML e txt.
Inicialmente, o utilitário foi desenvolvido como parte do projeto BerliOS . Ele incluiu uma plataforma de hospedagem para aplicativos de código aberto (como o SourceForge ) e vários bancos de dados para documentação e perfis de desenvolvedores de código aberto. O BerliOS foi fechado em 2014 devido a um financiamento insuficiente. Hoje, o HardInfo está sendo desenvolvido por entusiastas em um repositório separado no GitHub.
Observe que às vezes há erros no sistema. Sabe-se de um 
erro de segmentação que ocorre periodicamente, de problemas com a 
exibição de dispositivos USB e vários 
outros .
Ferramenta para teste de estresse de servidores HTTP. O ApacheBench (AB) foi projetado para testar o Apache, mas pode funcionar em qualquer outro servidor. A ferramenta está pré-instalada em muitas distribuições Linux.
 Fotos - Victor Freitas - Unsplash
Fotos - Victor Freitas - UnsplashO utilitário "bombardeia" os servidores com um grande número de solicitações. Para iniciar, digite o seguinte comando:
 ab -n 100 -c 10 http://www.example.com/ 
Ele enviará cem solicitações GET (no máximo dez delas serão transmitidas simultaneamente) para o recurso de teste. Na saída, o sistema mostrará o tempo médio para processar solicitações, a quantidade total de dados transferidos, a taxa de transferência e o número de erros.
Hoje, uma grande comunidade se reuniu em torno do utilitário. Novos guias sobre como configurar e usar o ApacheBench aparecem regularmente na rede.
Observe que a AB possui um analógico - 
Apache jMeter , mas com ótimos recursos. Por exemplo, permite gerar solicitações de vários computadores, controlando o processo a partir de um deles. O programa também implementa mecanismos de autorização para usuários virtuais, e sessões de usuário são suportadas. Essa ferramenta é usada por muitas empresas de TI, 
incluindo provedores de nuvem, como a 
Qualys .

 Nós da 1cloud fornecemos o serviço de 
nuvem privada . Trata-se de um aluguel de infraestrutura virtual com a capacidade de personalizar rapidamente a frota de 
servidores virtuais .

 Nossa nuvem é 
construída no hardware da Cisco, Dell, NetApp. O equipamento está localizado em vários data centers: DataSpace (Moscou), SDN / Xelent (São Petersburgo), Ahost (Alma-Ata).