Aplicativo Java de código aberto para testar carga e medir o desempenho de aplicações web e outros serviços.
elastic/rally
Framework de macrobenchmark para Elasticsearch que configura clusters, executa rodadas de benchmark e compara resultados.
- Estrelas
- 2,029
- Forks
- 350
- Issues abertas
- 132
- Último commit
- há 18 horas
O que é?
Rally é um framework de benchmark para Elasticsearch. Ele cuida da configuração e da remoção de um cluster Elasticsearch, gerencia dados de benchmark e especificações de teste entre versões do Elasticsearch, executa os benchmarks e registra os resultados.
Durante uma execução, o Rally pode conectar dispositivos de telemetria para ajudar a localizar problemas de desempenho e gerar relatórios resumidos na linha de comando. Também permite comparar os resultados de desempenho entre execuções. O projeto dá ênfase à reprodutibilidade dos dados de benchmark.
O Rally roda em Linux e macOS e pode executar benchmarks em clusters Elasticsearch rodando no Windows. Um benchmark é iniciado com um único comando, como esrally race, informando a versão da distribuição e a track desejadas.
Recursos principais
- 01Configura e remove clusters Elasticsearch para benchmarking.
- 02Gerencia dados de benchmark e especificações entre versões do Elasticsearch.
- 03Conecta dispositivos de telemetria para localizar problemas de desempenho.
- 04Gera relatórios resumidos e compara resultados entre execuções.
Casos de uso
- Medir a taxa de transferência de indexação e consultas ao atualizar a versão do Elasticsearch.
- Comparar o desempenho de clusters com configurações ou hardware diferentes.
- Executar benchmarks em um cluster Elasticsearch existente, inclusive um que rode no Windows.
- Investigar regressões de desempenho durante o desenvolvimento do Elasticsearch.
Início rápido
- 1
Instale Python 3.10 ou superior, pip3, git 1.9 ou superior e um JDK, e configure JAVA_HOME para esse JDK
- 2
Instale o Rally com pip
pip3 install esrally - 3
Execute sua primeira corrida com o Elasticsearch 6.0.0 e o track geonames
esrally race --distribution-version=6.0.0 --track=geonames
Antes de usar
- O Rally em si precisa ser instalado em máquinas Unix; ele é testado ativamente apenas no Linux e no macOS.
- Ele foi desenvolvido especificamente para avaliar o desempenho de clusters Elasticsearch.
- Para executar corridas, é necessário ter um JDK adequado instalado e JAVA_HOME configurado.
Tópicos
Perguntas frequentes
- O que é rally?
- Framework de macrobenchmark para Elasticsearch que configura clusters, executa rodadas de benchmark e compara resultados. Rally é um framework de benchmark para Elasticsearch. Ele cuida da configuração e da remoção de um cluster Elasticsearch, gerencia dados de benchmark e especificações de teste entre versões do Elasticsearch, executa os benchmarks e registra os resultados.
- rally é gratuito? Qual é a licença?
- rally é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- rally ainda é mantido?
- Manutenção ativa. O último commit de rally foi em 6 de nov. de 2026.
- Para que posso usar rally?
- Medir a taxa de transferência de indexação e consultas ao atualizar a versão do Elasticsearch. Comparar o desempenho de clusters com configurações ou hardware diferentes. Executar benchmarks em um cluster Elasticsearch existente, inclusive um que rode no Windows. Investigar regressões de desempenho durante o desenvolvimento do Elasticsearch.
- Como instalar rally?
- Instale Python 3.10 ou superior, pip3, git 1.9 ou superior e um JDK, e configure JAVA_HOME para esse JDK Instale o Rally com pip: pip3 install esrally Execute sua primeira corrida com o Elasticsearch 6.0.0 e o track geonames: esrally race --distribution-version=6.0.0 --track=geonames
- Onde consigo rally?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/elastic/rally
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Ferramenta multiplataforma de linha de comando para benchmark e teste de carga HTTP(S), escrita em Go e baseada em fasthttp para processar muitas requisições.
Ferramenta de linha de comando para benchmark e testes de carga de serviços gRPC, com concorrência, limites de taxa e formatos de saída configuráveis.
Ferramenta open source de teste de carga que permite definir testes de carga HTTP e de outros protocolos em Python puro, com uma interface web.
Ferramenta de linha de comando e biblioteca Go para testes de carga HTTP, que envia requisições a uma taxa constante e informa estatísticas de latência.
Ferramenta open source de testes de carga, com testes de performance escritos em JavaScript e executados por um binário em Go.