Benchmarks para servidores Linux: 5 ferramentas abertas

Hoje falaremos sobre ferramentas abertas para avaliação do desempenho de processadores, memória, sistemas de arquivos e sistemas de armazenamento de dados.

A lista inclui utilitários oferecidos por residentes do GitHub e participantes de tópicos no Reddit, como Sysbench, UnixBench, Phoronix Test Suite, Vdbench e IOzone.

Benchmarks para servidores Linux: 5 ferramentas abertas
/ Unsplash / Veri Ivanova

Sysbench

Esta é uma ferramenta para teste de carga em servidores MySQL, baseada no projeto LuaJIT, no qual uma máquina virtual para a linguagem Lua está sendo desenvolvida. O autor da ferramenta é o programador e especialista em MySQL Alexey Kopytov. O projeto começou como um hobby, mas com o tempo ganhou reconhecimento na comunidade. Hoje, o sysbench é utilizado por grandes universidades e organizações de TI. como o IEEE.

Durante a conferência SECR-2017 (gravação da apresentação está disponível no YouTube) Alexey explicou que o sysbench permite avaliar o desempenho do banco de dados ao migrar para novo hardware, ao atualizar a versão do SGBD ou ao alterar drasticamente o número de solicitações. De forma geral, a sintaxe do comando para realizar o teste é a seguinte:

sysbench [options]... [testname] [command]

Este comando define o tipo (cpu, memory, fileio) e os parâmetros do teste de carga (número de threads, número de solicitações, taxa de processamento de transações). No geral, a ferramenta pode processar milhões de eventos por segundo. Mais detalhes sobre a arquitetura e o funcionamento interno do sysbench foram apresentados por Alexey Kopytov em um dos episódios do Software Development Podcast.

UnixBench

Um conjunto de ferramentas para avaliar o desempenho de sistemas Unix. Foi apresentado por engenheiros da Universidade de Monash em 1983. Desde então, a manutenção da ferramenta foi feita por várias pessoas, como os autores da revista sobre microcomputadores Byte Magazine e o participante do LKML David Niemi. A próxima versão da ferramenta está sob responsabilidade de Anthony VoellmAnthony Voellm) da Microsoft.

O UnixBench consiste em um conjunto de testes individuais. Eles comparam a velocidade de execução do código em uma máquina executando Unix com o desempenho de um sistema de referência, que é SPARCstation 20-61. Com base nessa comparação, é gerada uma pontuação que determina o desempenho.

Os testes disponíveis incluem: Whetstone, que descreve a eficácia das operações de ponto flutuante, File Copy, que avalia a velocidade de cópia de dados, e vários benchmarks 2D e 3D. A lista completa de testes pode ser encontrada em repositório no GitHub. Muitos deles são usados para avaliar o desempenho das máquinas virtuais na nuvem.

Phoronix Test Suite

Este conjunto de testes foi desenvolvido pelos autores do site Phoronix, onde são publicadas notícias sobre distribuições GNU/Linux. A Test Suite foi apresentada pela primeira vez em 2008 — na época, incluía 23 testes diferentes. Posteriormente, os desenvolvedores lançaram o serviço em nuvem OpenBenchmarking.org, onde os usuários podiam publicar seus próprios scripts de teste. Hoje, existem apresenta cerca de 60 conjuntos de benchmarks, incluindo aqueles relacionados a aprendizado de máquina e tecnologia de ray-tracing.

Conjuntos de scripts especializados permitem testar componentes individuais do sistema. Com eles, é possível avaliar o tempo de compilação do kernel e a codificação de arquivos de vídeo, a velocidade de compressão de compactadores e outros. Para iniciar os testes, basta digitar o comando correspondente no console. Por exemplo, este comando inicia a avaliação de desempenho da CPU:

phoronix-test-suite benchmark smallpt

Durante o teste, a Test Suite monitora automaticamente o estado do hardware (temperatura da CPU e velocidade de rotação dos coolers), protegendo o sistema contra superaquecimento.

Benchmarks para servidores Linux: 5 ferramentas abertas
/ Unsplash / Jason Chen

Vdbench

Uma ferramenta para gerar carga I/O em sistemas de disco, desenvolvida pela Oracle. Ela ajuda a avaliar o desempenho e a integridade dos sistemas de armazenamento (sobre como calcular o desempenho teórico do sistema de disco, preparamos uma breve referência).

A solução funciona da seguinte maneira: em um sistema real, um programa chamado SWAT (Sun StorageTek Workload Analysis Tool) é executado, que cria um dump com todas as operações de disco durante um determinado período. São registrados o carimbo de data/hora, tipo de operação, endereço e tamanho do bloco de dados. Em seguida, usando o arquivo de dump, o vdbench emula a carga em qualquer outro sistema.

A lista de parâmetros para controlar a utilidade está no documento oficial da Oracle. O código-fonte da utilidade pode ser encontrado no site da empresa.

IOzone

Utilitário de console para avaliação de desempenho de sistemas de arquivos. Ele determina a velocidade de leitura, gravação e regravação de arquivos. O desenvolvimento da ferramenta contou com a participação de dezenas de programadores, mas seu autor da primeira versão é considerado o engenheiro William Norcott. O desenvolvimento foi apoiado por empresas como Apple, NetApp e iXsystems.

Para gerenciar os fluxos e sua sincronização durante os testes, a ferramenta utiliza o padrão POSIX Threads. Ao final da execução, o IOzone fornece um relatório com os resultados, seja em formato de texto ou como uma planilha eletrônica (Excel). A ferramenta também inclui um script gengnuplot.sh, que gera um gráfico tridimensional a partir dos dados das tabelas. Exemplos desses gráficos podem ser encontrados na documentação da ferramenta (p. 11–17).

O IOzone está disponível como um perfil de teste na já mencionada Phoronix Test Suite.

Leituras adicionais de nossos blogs e redes sociais:

Benchmarks para servidores Linux: 5 ferramentas abertas Um bug no Linux 5.1 causou perda de dados — já foi lançado um patch corretivo
Benchmarks para servidores Linux: 5 ferramentas abertas Há uma opinião: a tecnologia DANE para navegadores falhou

Benchmarks para servidores Linux: 5 ferramentas abertas Por que é necessária a monitoração?
Benchmarks para servidores Linux: 5 ferramentas abertas Backup de arquivos: como se proteger contra a perda de dados
Benchmarks para servidores Linux: 5 ferramentas abertas Como migrar um disco rígido do sistema para uma máquina virtual?

Benchmarks para servidores Linux: 5 ferramentas abertas Todos falam sobre vazamentos de dados pessoais — como um fornecedor de IaaS pode ajudar
Benchmarks para servidores Linux: 5 ferramentas abertas Breve introdução: como funciona a assinatura digital
Benchmarks para servidores Linux: 5 ferramentas abertas Guia: como funciona a lei de proteção de dados pessoais

Fonte: habr.com

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster