Continuamos nossa série de materiais dedicados ao teste de desempenho de servidores. Hoje, falaremos sobre alguns benchmarks consagrados que ainda são mantidos e atualizados — NetPerf, HardInfo e ApacheBench.
Foto — — CC BY-SA
Este é um instrumento para avaliar a largura de banda da rede. Foi desenvolvido por engenheiros da Hewlett-Packard. O instrumento possui dois arquivos executáveis: netserver e netclient. Para realizar o teste, eles precisam ser iniciados em máquinas diferentes. Por padrão, netperf utiliza a porta 12865, mas isso pode ser alterado com a flag -p. A ferramenta funciona com TCP e UDP através de BSD Sockets, DLPI, Unix Domain Sockets e IPv6.
Hoje, o netperf faz parte do conjunto de ferramentas para benchmarking . Além disso, é utilizado por um número considerável de empresas de TI, . Assim, é apresentada a descrição do serviço netperf em um dos exemplos para avaliação de 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
No repositório oficial, é afirmado que o netperf é distribuído sob uma licença especial da Hewlett-Packard. No entanto, o autor da ferramenta — Rick Jones — afirma que ela foi criada seguindo as melhores tradições do open source. Também vale ressaltar que, recentemente, as atualizações para o netperf têm sido lançadas com menos frequência. Isso pode estar relacionado à maturidade do produto.
O netperf possui análogos — por exemplo, e . Eles também permitem testar a largura de banda da rede. O desenvolvimento do iperf3 começou após o repositório do iperf2 entrar em declínio. A nova versão foi reescrita do zero e não é compatível com a implementação anterior, embora contenha parte de seu código. Curiosamente, após o lançamento do iperf3, o trabalho no iperf2 recomeçou. Como resultado, as duas ferramentas funcionalidades semelhantes, mas ao mesmo tempo diferentes. Por exemplo, o iperf2 é multithreaded, enquanto o iperf3 é apenas com um único thread.
Esta é uma ferramenta para coletar informações sobre hardware e sistema operacional. Ela exibe dados sobre o funcionamento de dispositivos em: PCI, ISA PnP, USB, IDE, SCSI, assim como portas seriais e paralelas. Mas pode ser utilizada como benchmark e ferramenta de monitoramento.
HardInfo oferece vários testes. Por exemplo, o CPU Blowfish avalia o desempenho do processador usando algoritmos criptográficos de criptografia simétrica em bloco. Existem — um teste de combinatória. O sistema resolve o problema de posicionamento de N rainhas em um tabuleiro de N x N casas. Ele posiciona as peças de forma que nenhuma delas possa atacar as outras. Também vale destacar o FPU FFT — teste para cálculo rápido de transformadas discretas de Fourier e o FPU Raytracing — cálculo de ray tracing na renderização de cenas 3D.
O resultado na maioria dos testes é dado em segundos e, portanto, quanto menor, melhor. Todos os relatórios são exibidos nos formatos HTML e txt.
A utilidade foi inicialmente desenvolvida no âmbito do projeto . Ele incluía uma plataforma de hospedagem para aplicativos de código aberto (como ) e várias bases de dados para documentação e perfis de desenvolvedores de código aberto. O BerliOS foi encerrado em 2014 devido à falta de financiamento. Hoje, o HardInfo se desenvolve com o esforço de entusiastas no GitHub.
Vale ressaltar que, às vezes, a operação do sistema encontra bugs. Sabe-se sobre um , problemas com e alguns .
Uma ferramenta para teste de carga de servidores HTTP. O ApacheBench (AB) foi desenvolvido para testar o Apache, mas pode funcionar em qualquer outro servidor. A ferramenta vem pré-instalada em muitas distribuições Linux.

Foto — — Unsplash
A utilidade 'bombardeia' os servidores com um grande número de solicitações. Para iniciar, é necessário inserir 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 enviadas simultaneamente) para o recurso de teste. A saída mostrará o tempo médio de processamento das solicitações, o volume total de dados transferidos, a largura de banda e o número de erros.
Hoje, uma ampla comunidade se formou em torno da utilidade. Na rede, novos sobre como configurar e usar o ApacheBench.
Vale destacar que o AB tem um análogo — , mas com mais recursos. Por exemplo, ele permite gerar consultas de vários computadores, gerenciando o processo a partir de um deles. O programa também possui mecanismos de autorização de usuários virtuais e suporta sessões de usuários. Esta ferramenta é utilizada por muitas empresas de TI, provedores de nuvem, como .
Nós na 1cloud oferecemos o serviço . Trata-se de aluguel de infraestrutura virtual com a possibilidade de personalização rápida do parque .
Nossa nuvem Cisco, Dell, NetApp. O equipamento está localizado em vários CDNs: DataSpace (Moscovo), SDN/Xelent (São Petersburgo), Ahost (Alma-Ata).
Fonte: habr.com
