PERF01-BP06 Benchmarking dei carichi di lavoro esistenti - Framework AWS Well-Architected

PERF01-BP06 Benchmarking dei carichi di lavoro esistenti

Esegui il benchmarking delle prestazioni di un carico di lavoro esistente per comprendere le sue prestazioni sul cloud. Utilizza i dati raccolti da questi benchmark per orientare le decisioni architetturali.

Utilizza test sintetici di benchmarking e monitoraggio degli utenti reali per generare dati sulle prestazioni dei componenti durante il carico di lavoro. Di solito, i benchmark sono più rapidi da configurare rispetto ai test di carico e vengono utilizzati per valutare la tecnologia di un componente specifico. Il benchmarking viene spesso utilizzato all'inizio di un nuovo progetto, quando non è ancora disponibile una soluzione completa da sottoporre a test di carico.

Puoi creare benchmark personalizzati, oppure utilizzare un test standard di settore, come TPC-DS , per confrontare i carichi di lavoro del data warehousing. I benchmark di settore sono utili quando devi confrontare ambienti diversi. Quelli personalizzati, invece, sono indicati per analizzare tipi specifici di operazioni che prevedi di eseguire nell'architettura.

In fase di benchmarking, è importante effettuare delle operazioni preliminari sull'ambiente di test al fine di garantire la validità dei risultati. Devi eseguire lo stesso benchmark più volte, per assicurarti di avere acquisito ogni eventuale variazione nel corso del tempo.

Dal momento che, di solito, l'esecuzione dei benchmark è più rapida di quella dei test di carico, il benchmarking può essere utilizzato sin dalle prime fasi della pipeline di distribuzione, così da fornire al team feedback più rapidi sulle deviazioni delle prestazioni. Quando valuti un cambiamento significativo in un componente o servizio, i benchmark possono essere un modo rapido per verificare se l'impegno necessario per apportare la modifica sia giustificato. L'utilizzo del benchmarking in combinazione con i test di carico è importante perché questi ultimi forniscono indicazioni sulle prestazioni del carico di lavoro in fase di produzione.

Anti-pattern comuni:

  • Fai affidamento su valori di riferimento comuni che non sono indicativi delle caratteristiche del carico di lavoro.

  • L'unico punto di riferimento è dato dal feedback e dalle percezioni dei clienti.

Vantaggi dell'adozione di questa best practice: Il benchmarking dell'implementazione corrente ti consente di misurare il miglioramento delle prestazioni.

Livello di rischio associato se questa best practice non fosse adottata: Medio

Guida all'implementazione

Monitoraggio delle prestazioni durante lo sviluppo: implementa processi che forniscono visibilità sulle prestazioni durante l'evoluzione del carico di lavoro.

Integrazione nella pipeline di distribuzione: esegui automaticamente test di carico nella pipeline di distribuzione. Confronta i risultati dei test con soglie e KPI predefiniti per assicurarti di poter continuare a soddisfare i requisiti delle prestazioni.

Test dei percorsi utente: utilizza versioni sintetiche o purificate dei dati di produzione, rimuovendo le informazioni sensibili o che permettono l'identificazione degli utenti, per eseguire i test di carico. Verifica l'intera architettura utilizzando percorsi utente riprodotti o già programmati su tutta l'applicazione in larga scala.

Monitoraggio degli utenti reali: utilizza il RUM CloudWatch come aiuto per raccogliere e visualizzare i dati lato cliente riguardanti le prestazioni dell'applicazione. Utilizza quindi i dati per definire i benchmark prestazionali per gli utenti reali.

Risorse

Documenti correlati:

Video correlati:

Esempi correlati: