Ferramentas que podem ser usadas - AWS Orientação prescritiva

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Ferramentas que podem ser usadas

k6

O k6 é uma ferramenta gratuita que oferece suporte, hospedagem da fonte de carga e uma interface web integrada para organizar, executar e analisar testes de carga.

O k6 é escrito em Go e enviado como um único executável. Ele usará todos os núcleos do seu sistema de origem. Ele usa um subconjunto de JavaScript para executar cenários complexos e inclui perfis de teste. Você pode criar cenários de teste complexos JavaScript que sejam executados com eficiência. A saída pode ser resumida ou detalhada para vários armazenamentos de destino. As extensões são suportadas, mas existem poucas extensões bem mantidas, além da extensão oficial k6.

A maioria dos testes de carga pode ser executada em um único servidor, se o servidor for grande o suficiente, o que evitará um teste de carga distribuído mais complexo.

Os resultados do teste de carga podem ser encaminhados para o Amazon Managed Service for Prometheus, CloudWatch Amazon ou outro serviço de monitoramento para uma análise mais detalhada. Também é possível incluir critérios de sucesso no código dos cenários para executá-lo em pipelines de integração contínua (CI).

Vegeta

O teste de carga do Vegeta segue um conceito diferente. Em vez de definir simultaneidade ou gerar carga em seu sistema, você define uma determinada taxa. A ferramenta então cria essa carga independente dos tempos de resposta do seu sistema.

Essa é uma ótima maneira de explorar cenários de contrapressão ou o comportamento de longo prazo dos processos de back-end, nos quais você deseja negar a influência dos tempos de resposta e do teste. A ferramenta não é capaz de realizar comportamentos complexos, mas é possível executar qualquer sequência de solicitações que não exija a passagem de informações entre elas.

O Vegeta também pode ser usado como biblioteca para aplicações em Go. Dessa forma, é possível implementar seu próprio teste de carga, com um back-end poderoso. Embora possa fazer mais sentido usar outra ferramenta do que implementar seu próprio teste.

Hey and ab

A Hey and ab, a ferramenta de benchmarking do servidor Apache HTTP, são as ferramentas básicas que você pode usar na linha de comando para executar a carga especificada em um único endpoint. Essa é a maneira mais rápida de gerar carga se você tem um servidor para executar as ferramentas. Até mesmo um laptop local funcionará, embora possa não ser poderoso o suficiente para produzir cargas elevadas.

Apache JMeter

O Apache JMeter é o cavalo de força experiente. Com o passar dos anos, o Apache JMeter se tornou mais confiável e recebeu novos recursos. Com a interface gráfica, é possível criar testes complexos sem precisar conhecer uma linguagem de programação. Empresas como BlazeMeter oferecem suporte ao Apache JMeter.

Teste de carga distribuída em AWS

O teste de carga distribuído na AWS solução suporta o uso de scripts personalizados do Apache JMeter. Ao usar a AWS solução Distributed Load Testing on, você pode carregar seu script Apache JMeter para executar seus testes na nuvem. Outro benefício é o suporte à saída. Ele permite transmitir os eventos para bancos de dados de stream de tempo e executar consultas avançadas sobre eles, fornecendo uma visão detalhada de toda a execução do teste.