Visão geral da arquitetura - Teste de carga distribuído na AWS

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á.

Visão geral da arquitetura

Diagrama de arquitetura

A implantação dessa solução com os parâmetros padrão implanta os seguintes componentes em sua conta da AWS.

Teste de carga distribuído na arquitetura da AWS na AWS

imagem 2
nota

Os CloudFormation recursos da AWS são criados a partir de construções do AWS Cloud Development Kit (AWS CDK).

O fluxo de processo de alto nível para os componentes da solução implantados com o CloudFormation modelo da AWS é o seguinte:

  1. Uma API de testador de carga distribuído, que utiliza o Amazon API Gateway para invocar os microsserviços da solução (funções do AWS Lambda).

  2. Os microsserviços fornecem a lógica de negócios para gerenciar dados de teste e executar os testes.

  3. Esses microsserviços interagem com o Amazon Simple Storage Service (Amazon S3), o Amazon DynamoDB e o AWS Step Functions para fornecer armazenamento para os detalhes e resultados do cenário de teste e executar cenários de teste.

  4. Uma topologia de rede da Amazon Virtual Private Cloud (Amazon VPC) é implantada contendo os contêineres Amazon Elastic Container Service (Amazon ECS) da solução executados no AWS Fargate.

  5. Os contêineres incluem a AmazonLinuximagem de contêiner compatível com a Open Container Initiative (OCI) (com a estrutura de teste de carga do blazemeter instalada), usada para gerar carga para testar o desempenho do seu aplicativo. Taurus/Blazemeter é uma estrutura de automação de testes de código aberto. A imagem do contêiner é hospedada pela AWS em um repositório público do Amazon Elastic Container Registry (Amazon ECR). Para obter mais informações sobre o repositório de imagens ECR, consulte Personalização de imagens de contêiner.

  6. Um console web desenvolvido pelo AWS Amplify é implantado em um bucket Amazon S3 configurado para hospedagem estática na web.

  7. CloudFrontA Amazon fornece acesso público e seguro ao conteúdo do bucket do site da solução.

  8. Durante a configuração inicial, essa solução também cria uma função padrão de administrador da solução (função IAM) e envia um convite de acesso para um endereço de e-mail de usuário especificado pelo cliente.

  9. Um grupo de usuários do Amazon Cognito gerencia o acesso do usuário ao console e à API do testador de carga distribuído.

  10. Depois de implantar essa solução, você pode usar o console web para criar um cenário de teste que define uma série de tarefas.

  11. Os microsserviços usam esse cenário de teste para executar o Amazon ECS em tarefas do AWS Fargate nas regiões especificadas.

  12. Além de armazenar os resultados no Amazon S3 e no DynamoDB, quando o teste é concluído, a saída é registrada na Amazon. CloudWatch

  13. Se você selecionar a opção de dados ativos, a solução enviará os CloudWatch registros da Amazon para as tarefas do AWS Fargate para uma função Lambda durante o teste, para cada região em que o teste foi executado.

  14. Em seguida, a função Lambda publica os dados no tópico correspondente no AWS IoT Core na região em que a pilha principal foi implantada. O console web se inscreve no tópico e você pode ver os dados enquanto o teste é executado no console web.