CLI de teste de carga HTTP(S) escrito em Go, com visualização em tempo real no terminal e gráficos na web, usando fasthttp para as requisições.
hatoo/oha
Gerador de carga HTTP para linha de comando, escrito em Rust e inspirado no rakyll/hey, com interface de terminal em tempo real.
- Estrelas
- 10,629
- Forks
- 306
- Issues abertas
- 59
- Último commit
- há 3 dias
O que é?
oha é uma ferramenta de linha de comando que envia carga HTTP para uma aplicação web e exibe os resultados em uma interface de terminal em tempo real. Ela se baseia no rakyll/hey, e suas opções seguem as convenções do hey, com algumas diferenças — por exemplo, a flag -q define o total de consultas por segundo, em vez da quantidade por worker.
oha oferece suporte a HTTP/1.1, HTTP/2 (com streams paralelos por conexão) e HTTP/3 experimental. É possível controlar a taxa de requisições, os padrões de rajada e a duração, além de gerar URLs aleatórias a partir de uma regex ou ler uma lista de URLs de um arquivo. Há uma opção de correção de latência para evitar o problema de coordinated omission. A saída pode ser em texto simples, JSON, CSV ou modo silencioso, e as requisições bem-sucedidas podem ser gravadas em um banco de dados SQLite.
Criada com tokio e ratatui, oha também oferece opções de TLS (rustls ou native-tls), certificados de cliente, assinatura AWS SigV4, proxies, sockets Unix e VSOCK. Há binários pré-compilados disponíveis via Cargo, Homebrew, Arch Linux, winget e Docker.
Recursos principais
- 01Interface de terminal em tempo real que mostra vazão e latência durante o teste.
- 02Suporte a HTTP/1.1, HTTP/2 e HTTP/3 experimental.
- 03Limitação de taxa por QPS, padrões de rajada e execuções com duração definida.
- 04Geração de URLs aleatórias a partir de regex ou leitura de listas de URLs de um arquivo.
- 05Saída em texto, JSON, CSV ou modo silencioso, com um schema JSON documentado.
- 06Opção de correção de latência para evitar coordinated omission.
- 07Opções de TLS, certificados de cliente, proxies e assinatura AWS SigV4.
Casos de uso
- Testar a carga de um serviço web antes de um lançamento e observar seu comportamento sob concorrência.
- Comparar o desempenho de HTTP/1.1 e HTTP/2 em um endpoint.
- Reproduzir URLs de um access log para gerar uma combinação realista de tráfego.
- Executar benchmarks rápidos em CI ou scripts com saída em JSON ou CSV.
Início rápido
- 1
Instale oha com Cargo (requer Rust, make e cmake).
cargo install oha - 2
Execute oha em uma URL de destino usando as opções da seção Usage do README.
Antes de usar
- Para compilar a partir do código-fonte com Cargo, é necessário ter make e cmake instalados.
- O recurso HTTP/3 é experimental e depende do rustls para TLS.
- O README lista apenas as plataformas testadas (Linux, Windows 10 e macOS), sem especificar suporte mais amplo.
Em coleções
Tópicos
Perguntas frequentes
- O que é oha?
- Gerador de carga HTTP para linha de comando, escrito em Rust e inspirado no rakyll/hey, com interface de terminal em tempo real. oha é uma ferramenta de linha de comando que envia carga HTTP para uma aplicação web e exibe os resultados em uma interface de terminal em tempo real. Ela se baseia no rakyll/hey, e suas opções seguem as convenções do hey, com algumas diferenças — por exemplo, a flag -q define o total de consultas por segundo, em vez da quantidade por worker.
- oha é gratuito? Qual é a licença?
- oha é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- oha ainda é mantido?
- Manutenção ativa. O último commit de oha foi em 22 de out. de 2026.
- Para que posso usar oha?
- Testar a carga de um serviço web antes de um lançamento e observar seu comportamento sob concorrência. Comparar o desempenho de HTTP/1.1 e HTTP/2 em um endpoint. Reproduzir URLs de um access log para gerar uma combinação realista de tráfego. Executar benchmarks rápidos em CI ou scripts com saída em JSON ou CSV.
- Como instalar oha?
- Instale oha com Cargo (requer Rust, make e cmake).: cargo install oha Execute oha em uma URL de destino usando as opções da seção Usage do README.
- Onde consigo oha?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/hatoo/oha
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
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 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 comparar o desempenho de comandos, com análise estatística, execuções de aquecimento e exportação para CSV, JSON, Markdown e AsciiDoc.
Aplicativo Java de código aberto para testar carga e medir o desempenho de aplicações web e outros serviços.
Lista selecionada de ferramentas para benchmark de HTTP(S), teste de carga, depuração e clientes de API REST, com notas breves sobre cada uma.