

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

# Automatizza il test delle tue applicazioni software su larga scala
<a name="solution-overview"></a>

Data di pubblicazione: *dicembre 2025* 

Distributed Load Testing on AWS ti aiuta ad automatizzare i test delle prestazioni delle tue applicazioni software su larga scala per identificare i colli di bottiglia prima di rilasciare l'applicazione. Questa soluzione simula migliaia di utenti connessi che generano richieste HTTP a una velocità sostenuta senza la necessità di fornire server.

Questa soluzione sfrutta [Amazon Elastic Container Service (Amazon ECS) su AWS Fargate](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/AWS_Fargate.html) per distribuire contenitori che eseguono simulazioni di test di carico e offre le seguenti funzionalità:
+ Implementa Amazon ECS su contenitori AWS Fargate eseguiti in modo indipendente per testare la capacità di carico della tua applicazione.
+ Simula decine di migliaia di utenti simultanei in più regioni AWS generando richieste a un ritmo continuo.
+ Personalizza i test delle tue applicazioni utilizzando [K6 [JMeter](https://jmeter.apache.org/)](https://k6.io/), gli script di test [Locust](https://locust.io/) o una semplice configurazione degli endpoint HTTP.
+ Pianifica i test di carico in modo che vengano eseguiti immediatamente, in una data e ora future o in base a una pianificazione ricorrente.
+ Esegui più test di carico contemporaneamente in diversi scenari e regioni.

Questa guida all'implementazione fornisce una panoramica della soluzione Distributed Load Testing on AWS, della sua architettura e dei suoi componenti di riferimento, considerazioni per la pianificazione della distribuzione e delle fasi di configurazione per la distribuzione della soluzione nel cloud Amazon Web Services (AWS). Include collegamenti a un CloudFormation modello [AWS](https://aws.amazon.com/cloudformation/) che avvia e configura i servizi AWS necessari per distribuire questa soluzione utilizzando le best practice di AWS per la sicurezza e la disponibilità.

Il pubblico previsto per l'utilizzo delle caratteristiche e delle funzionalità di questa soluzione nel proprio ambiente include architetti di infrastrutture IT, amministratori e DevOps professionisti con esperienza pratica di architettura nel cloud AWS.

Utilizza questa tabella di navigazione per trovare rapidamente le risposte a queste domande:


| Se vuoi. | Leggi.. | 
| --- | --- | 
|  Conosci il costo di esecuzione di questa soluzione. Il costo stimato per l'esecuzione di questa soluzione nella regione Stati Uniti orientali (Virginia settentrionale) è di 30,90 USD al mese per le risorse AWS.  |   [Costo](cost.md)   | 
|  Comprendi le considerazioni sulla sicurezza relative a questa soluzione.  |   [Sicurezza](security-1.md)   | 
|  Scopri come pianificare le quote per questa soluzione.  |   [Quote](quotas.md)   | 
|  Scopri quali regioni AWS supportano questa soluzione.  |   [Regioni AWS supportate](plan-your-deployment.md#supported-aws-regions)   | 
|  Scopri il server MCP opzionale per l'analisi dei test di carico assistita dall'intelligenza artificiale.  |   [Integrazione con server MCP](mcp-server-integration.md)   | 
|  Visualizza o scarica il CloudFormation modello AWS incluso in questa soluzione per distribuire automaticamente le risorse dell'infrastruttura (lo «stack») per questa soluzione.  |   [ CloudFormation Modello AWS](aws-cloudformation-template.md)   | 
|  Accedi al codice sorgente e, facoltativamente, utilizza AWS Cloud Development Kit (AWS CDK) per distribuire la soluzione.  |   [GitHub repository](https://github.com/aws-solutions/distributed-load-testing-on-aws)   | 

# Funzionalità
<a name="features"></a>

La soluzione offre le seguenti funzionalità:

 **Supporto per Multiple Test Framework** 

Supporta JMeter gli script di test K6 e Locust, oltre a semplici test sugli endpoint HTTP senza richiedere script personalizzati. Per ulteriori informazioni, consulta [Tipi di test](design-considerations.md#test-types) nella sezione Dettagli sull'architettura.

 **Simulazione di un carico utente elevato** 

Simula decine di migliaia di utenti virtuali simultanei per sottoporre a stress test l'applicazione in condizioni di carico realistiche.

 **Distribuzione del carico in più regioni** 

Distribuisce test di carico su più regioni AWS per simulare il traffico utente distribuito geograficamente e valutare le prestazioni globali.

 **Pianificazione flessibile dei test** 

Pianifica l'esecuzione dei test immediatamente, in una data e ora future specifiche o in base a una pianificazione ricorrente utilizzando le espressioni cron per i test di regressione automatici.

 **monitoraggio in tempo reale** 

Fornisce uno streaming opzionale di dati in tempo reale per monitorare l'avanzamento dei test con metriche in tempo reale tra cui tempi di risposta, conteggi virtuali degli utenti e percentuali di successo delle richieste.

 **Risultati completi dei test** 

Visualizza i risultati dettagliati dei test con metriche delle prestazioni, percentili (p50, p90, p95, p99), analisi degli errori e artefatti scaricabili per l'analisi offline.

 **Confronto di base** 

Indica le esecuzioni dei test di base per il confronto delle prestazioni al fine di tenere traccia dei miglioramenti o delle regressioni nel tempo.

 **Flessibilità degli endpoint** 

Testa qualsiasi endpoint HTTP o HTTPS nelle regioni AWS, negli ambienti locali o in altri provider cloud.

 **Console Web intuitiva** 

Fornisce una console basata sul Web per la creazione, la gestione e il monitoraggio dei test senza la necessità di interazione da riga di comando.

 **Analisi assistita dall'intelligenza artificiale (opzionale)** 

Si integra con gli strumenti di sviluppo AI tramite il server Model Context Protocol (MCP) per l'analisi intelligente dei dati dei test di carico.

 **Supporto per protocolli multipli** 

Supporta vari protocolli tra cui HTTP, HTTPS WebSocket, JDBC, JMS, FTP e gRPC tramite script di test personalizzati.

# Vantaggi
<a name="benefits"></a>

La soluzione offre i seguenti vantaggi:

 **Test completi delle prestazioni** 

Supporta test di carico, stress test e test di resistenza per valutare a fondo le prestazioni delle applicazioni in varie condizioni.

 **Rilevamento precoce dei problemi** 

Identifica i rallentamenti delle prestazioni, le perdite di memoria e i problemi di scalabilità prima dell'implementazione in produzione, riducendo il rischio di interruzioni.

 **Simulazione di utilizzo nel mondo reale** 

Simula accuratamente il comportamento degli utenti e i modelli di traffico nel mondo reale per convalidare le prestazioni delle applicazioni in condizioni realistiche.

 **Performance Insights utilizzabili** 

Fornisce metriche dettagliate, percentili e analisi degli errori per comprendere il comportamento delle applicazioni e guidare gli sforzi di ottimizzazione.

 **Flussi di lavoro di test automatizzati** 

Consente test programmati e ricorrenti per il monitoraggio continuo delle prestazioni e i test di regressione senza intervento manuale.

 **Infrastruttura efficiente in termini di costi** 

Utilizza contenitori AWS Fargate serverless pay-per-use con prezzi, eliminando la necessità di un'infrastruttura di test dedicata e di canoni di abbonamento continui.

 **Distribuzione rapida dei test** 

Implementa e ridimensiona l'infrastruttura di test in pochi minuti senza fornire o gestire server.

 **Interrogazione semplificata dei risultati dei test** 

Si integra con gli strumenti di sviluppo AI tramite un server opzionale Model Context Protocol (MCP), che consente query in linguaggio naturale e analisi intelligente dei dati dei test di carico per informazioni e risoluzione dei problemi più rapide.

# Casi d’uso
<a name="use-cases"></a>

 **Validazione pre-produzione** 

Testa le applicazioni web e mobili in condizioni di carico simili a quelle di produzione prima di lanciare una nuova versione per convalidare le prestazioni e identificare i problemi.

 **Pianificazione della capacità** 

Determina il numero massimo di utenti simultanei che l'applicazione può supportare con l'infrastruttura corrente e identifica quando è necessaria la scalabilità.

 **Verifica del carico di picco** 

Verifica che la tua infrastruttura sia in grado di gestire picchi di carico, picchi di traffico stagionali o picchi imprevisti della domanda senza un peggioramento delle prestazioni.

 **Ottimizzazione delle prestazioni** 

Identifica gli ostacoli alle prestazioni come le query lente sul database, l'esecuzione inefficiente del codice, la latenza di rete o i vincoli di risorse.

 **Test di regressione** 

Pianifica test di carico ricorrenti per rilevare le regressioni delle prestazioni introdotte da nuove implementazioni di codice o modifiche all'infrastruttura.

 **Valutazione globale delle prestazioni** 

Valuta le prestazioni delle applicazioni da più aree geografiche per garantire un'esperienza utente coerente per un pubblico globale.

 **Test di carico delle API** 

Testa gli endpoint REST APIs, GraphQL o i microservizi per convalidare i tempi di risposta, la velocità effettiva e i tassi di errore sotto carico.

 **Integrazione della pipeline CI/CD** 

Integra i test automatizzati delle prestazioni in pipeline di integrazione e distribuzione continue per individuare i problemi di prestazioni nelle prime fasi del ciclo di sviluppo.

 **Test di servizi di terze parti** 

Verifica le prestazioni e l'affidabilità dei servizi APIs di terze parti da cui dipende l'applicazione in varie condizioni di carico.

# Concetti e definizioni
<a name="concepts-and-definitions"></a>

Questa sezione descrive i concetti chiave e definisce la terminologia specifica di questa soluzione:

 **scenario** 

Definizione del test che include nome, descrizione, numero di attività, concorrenza, regione AWS, ramp-up, hold-for, tipo di test, data di pianificazione e configurazioni di ricorrenza.

 **conteggio delle attività** 

Numero di container che verranno lanciati nel cluster Fargate per eseguire lo scenario di test. Non verranno create attività aggiuntive una volta raggiunto il limite dell'account per le risorse Fargate. Tuttavia, le attività già in esecuzione continueranno.

 **concurrency** 

La concorrenza (numero di utenti virtuali simultanei per attività). La concorrenza consigliata in base alle impostazioni predefinite è 200. La concorrenza è limitata dalla CPU e dalla memoria. Per i test basati su Apache JMeter, una maggiore concorrenza aumenta la memoria utilizzata dalla JVM per l'attività ECS. L'impostazione predefinita di ECS Task Definition crea attività con 4 GB di memoria. Si consiglia di iniziare con valori di concorrenza inferiori per 1 attività e di monitorare le CloudWatch metriche ECS per il Task Cluster. Fai riferimento ai [parametri di utilizzo del cluster Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/cluster_utilization.html).

 **accelerazione** 

Il periodo di tempo necessario per passare gradualmente da zero al livello di concorrenza previsto.

 **tieni premuto per** 

Il periodo di tempo necessario per mantenere il livello di concorrenza previsto dopo il completamento dell'accelerazione.

Per un riferimento generale ai termini di AWS, consulta il [Glossario AWS](https://docs.aws.amazon.com/general/latest/gr/glos-chap.html).