

# PERF08-BP03 Identificazione dell'impatto dei compromessi sui clienti e sull'efficienza
<a name="perf_tradeoffs_performance_understand_impact"></a>

 Quando valuti i miglioramenti correlati alle prestazioni, determina quali scelte avranno un impatto sui clienti e sull'efficienza del carico di lavoro. Ad esempio, se l'utilizzo di un datastore chiave-valore aumenta le prestazioni del sistema, è importante valutare in che modo la consistenza della sua natura finale influirà sui clienti. 

 Grazie ai parametri e al monitoraggio, identifica le aree del sistema in cui le prestazioni sono scarse. Stabilisci in che modo puoi apportare miglioramenti e quali compromessi comportano, oltre al loro impatto sul sistema e sull'esperienza degli utenti. L'implementazione di cache di dati, ad esempio, può contribuire a migliorare notevolmente le prestazioni ma richiede una strategia ben definita sulle modalità e sui tempi di aggiornamento o di invalidamento dei dati che vi sono contenuti, per evitare che il sistema si comporti in modo non corretto. 

 **Anti-pattern comuni:** 
+  Ritieni che tutti i vantaggi prestazionali debbano essere implementati, anche se ci sono compromessi per l'implementazione, come la consistenza finale. 
+  Valuti di apportare modifiche ai carichi di lavoro solo quando un problema prestazionale ha raggiunto un punto critico. 

 **Vantaggi dell'adozione di questa best practice:** Quando valuti potenziali miglioramenti relativi alle prestazioni, è necessario decidere se i compromessi per le modifiche sono coerenti con i requisiti del carico di lavoro. In alcuni casi, potrebbe essere necessario implementare controlli aggiuntivi per compensare i compromessi. 

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

## Guida all'implementazione
<a name="implementation-guidance"></a>

 Identifica i compromessi: usa i parametri e il monitoraggio per identificare le aree di scarso rendimento del tuo sistema. Determina come apportare miglioramenti e che tipo di impatto avranno i compromessi sul sistema e sull'esperienza utente. L'implementazione di cache di dati, ad esempio, può contribuire a migliorare notevolmente le prestazioni, ma richiede una strategia ben definita sulle modalità e sui tempi di aggiornamento o di invalidamento dei dati che vi sono contenuti, per evitare che il sistema si comporti in modo non corretto. 

## Risorse
<a name="resources"></a>

 **Documenti correlati:** 
+  [Amazon Builders' Library](https://aws.amazon.com/builders-library) 
+  [Quick KPIs (KPI di Amazon QuickSight)](https://docs.aws.amazon.com/quicksight/latest/user/kpi.html) 
+  [RUM Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) 
+  [X-Ray Documentation (Documentazione di X-Ray)](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 

 **Video correlati:** 
+  [Introducing The Amazon Builders' Library (DOP328)](https://www.youtube.com/watch?v=sKRdemSirDM) 
+  [Creazione di un piano di monitoraggio](https://www.youtube.com/watch?v=OMmiGETJpfU&ref=wellarchitected) 
+  [Optimize applications through Amazon CloudWatch RUM (Ottimizzazione delle applicazioni tramite RUM Amazon CloudWatch)](https://www.youtube.com/watch?v=NMaeujY9A9Y) 
+  [Demo di Amazon CloudWatch Synthetics](https://www.youtube.com/watch?v=hF3NM9j-u7I) 

 **Esempi correlati:** 
+  [Measure page load time with Amazon CloudWatch Synthetics (Misurare il tempo di caricamento della pagina con Amazon CloudWatch Synthetics)](https://github.com/aws-samples/amazon-cloudwatch-synthetics-page-performance) 
+  [Amazon CloudWatch RUM Web Client (Client Web RUM Amazon CloudWatch)](https://github.com/aws-observability/aws-rum-web) 