PERF05-BP04 Fazer o teste de carga da workload
Teste sua workload para verificar se ela pode lidar com a carga de produção e identificar qualquer gargalo de performance.
Práticas comuns que devem ser evitadas:
-
Você faz um teste de carga de partes individuais da workload, mas não de toda ela.
-
Você faz um teste de carga em uma infraestrutura que não é igual ao seu ambiente de produção.
-
Você só faz testes de carga para a carga esperada, mas para nada além dela, para ajudar a prever onde pode haver problemas futuros.
-
Você faz testes de carga sem consultar a política de testes do Amazon EC2
e enviar um formulário de envio de eventos simulados. Isso faz com que o teste não seja executado, pois parece um evento de negação de serviço.
Benefícios de implementar esta prática recomendada: medir sua performance em um teste de carga mostrará onde você será afetado à medida que a carga aumentar. Com isso você terá a capacidade de antecipar as alterações necessárias antes que elas afetem sua workload.
Nível de risco exposto se esta prática recomendada não for estabelecida: Baixo
Orientação para implementação
O teste de carga na nuvem é um processo para medir a performance da workload na nuvem em condições realistas com a carga esperada do usuário. Esse processo envolve o provisionamento de um ambiente de nuvem semelhante ao de produção, o uso de ferramentas de teste de carga para gerar carga e a análise de métricas para avaliar a capacidade da workload de lidar com cargas realistas. Execute os testes de carga usando versões sintéticas ou limpas dos dados de produção (remova informações confidenciais ou de identificação). Realize testes de carga automaticamente como parte de seu pipeline de entrega e compare os resultados a KPIs e limites predefinidos. Esse processo ajuda você a continuar alcançando a performance necessária.
Etapas de implementação
-
Defina seus objetivos de teste: identifique os aspectos de performance da workload que você deseja avaliar, como throughput e tempo de resposta.
-
Selecione uma ferramenta de teste: escolha e configure a ferramenta de teste de carga adequada à workload.
-
Configure seu ambiente: configure o ambiente de teste com base no ambiente de produção. É possível usar os serviços da AWS para executar ambientes em escala de produção para testar a arquitetura.
-
Implemente o monitoramento: use ferramentas de monitoramento como o Amazon CloudWatch
para coletar métricas dos recursos em sua arquitetura. Você também pode coletar e publicar métricas personalizadas. -
Defina cenários: defina os cenários e parâmetros do teste de carga (como duração do teste e número de usuários).
-
Faça testes de carga: realize cenários de teste em grande escala. Aproveite a Nuvem AWS para testar a workload e descobrir se há uma falha na escala ou se ela está com a escala reduzida horizontalmente de maneira não linear. Por exemplo, use instâncias spot para gerar cargas a um baixo custo e descobrir gargalos antes que eles ocorram em produção.
-
Analise os resultados do teste: analise os resultados para identificar gargalos de performance e áreas para melhorias.
-
Documente e compartilhe descobertas: documente e relate as descobertas e recomendações. Compartilhe essas informações com as partes interessadas para ajudá-las a tomar decisões embasadas sobre estratégias de otimização da performance.
-
Faça iterações contínuas: o teste de carga deve ser realizado regularmente, especialmente após uma alteração ou atualização do sistema.
Recursos
Documentos relacionados:
Vídeos relacionados:
Exemplos relacionados: