Panoramica dell'architettura - Test di carico distribuito su AWS

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Panoramica dell'architettura

Diagramma architetturale

La distribuzione di questa soluzione con i parametri predefiniti distribuisce i seguenti componenti nel tuo account AWS.

Test di carico distribuito sull'architettura AWS su AWS

image2
Nota

Le CloudFormation risorse AWS vengono create a partire da costrutti di AWS Cloud Development Kit (AWS CDK).

Il flusso di processo di alto livello per i componenti della soluzione distribuiti con il CloudFormation modello AWS è il seguente:

  1. Un'API distribuita per testare il carico, che sfrutta Amazon API Gateway per richiamare i microservizi della soluzione (funzioni AWS Lambda).

  2. I microservizi forniscono la logica aziendale per gestire i dati di test ed eseguire i test.

  3. Questi microservizi interagiscono con Amazon Simple Storage Service (Amazon S3), Amazon DynamoDB e AWS Step Functions per fornire storage per i dettagli e i risultati dello scenario di test ed eseguire scenari di test.

  4. Viene implementata una topologia di rete Amazon Virtual Private Cloud (Amazon VPC) contenente i contenitori Amazon Elastic Container Service (Amazon ECS) della soluzione in esecuzione su AWS Fargate.

  5. I contenitori includono l'immagine del contenitore conforme a Open Container Initiative AmazonLinux(OCI) (con il framework di test di carico blazemeter installato), che viene utilizzata per generare il carico per testare le prestazioni dell'applicazione. Taurus/Blazemeter è un framework di automazione dei test open source. L'immagine del contenitore è ospitata da AWS in un repository pubblico Amazon Elastic Container Registry (Amazon ECR). Per ulteriori informazioni sull'archivio di immagini ECR, consulta la sezione Personalizzazione dell'immagine del contenitore.

  6. Una console Web basata su AWS Amplify viene distribuita in un bucket Amazon S3 configurato per l'hosting web statico.

  7. Amazon CloudFront fornisce un accesso pubblico e sicuro ai contenuti del bucket del sito Web della soluzione.

  8. Durante la configurazione iniziale, questa soluzione crea anche un ruolo di amministratore della soluzione predefinito (ruolo IAM) e invia un invito di accesso a un indirizzo e-mail utente specificato dal cliente.

  9. Un pool di utenti di Amazon Cognito gestisce l'accesso degli utenti alla console e all'API del tester di carico distribuito.

  10. Dopo aver distribuito questa soluzione, puoi utilizzare la console web per creare uno scenario di test che definisce una serie di attività.

  11. I microservizi utilizzano questo scenario di test per eseguire attività di Amazon ECS su AWS Fargate nelle regioni specificate.

  12. Oltre a memorizzare i risultati in Amazon S3 e DynamoDB, una volta completato il test, l'output viene registrato in Amazon. CloudWatch

  13. Se selezioni l'opzione live data, la soluzione invia CloudWatch i log di Amazon per le attività di AWS Fargate a una funzione Lambda durante il test, per ogni regione in cui è stato eseguito il test.

  14. La funzione Lambda pubblica quindi i dati nell'argomento corrispondente in AWS IoT Core nella regione in cui è stato distribuito lo stack principale. La console Web sottoscrive l'argomento e puoi visualizzare i dati durante l'esecuzione del test nella console Web.