Questo contenuto è obsoleto. Questa versione di Framework Well-Architected è ora disponibile all'indirizzo: https://docs.aws.amazon.com/it_it/wellarchitected/2022-03-31/framework/performance-efficiency.html

PERF 8: Come si utilizzano i compromessi per migliorare le prestazioni?

Quando si progettano soluzioni, determinare i compromessi ti consente di selezionare un approccio ottimale. Spesso è possibile migliorare le prestazioni accettando compromessi in termini di coerenza, durata e spazio a favore di tempo e latenza.

Risorse

Introducing The Amazon Builders’ Library (DOP328)
Amazon Builders’ Library
Best Practices for Implementing Amazon ElastiCache

Best practice:

Piano di miglioramento

Definizione delle aree in cui le prestazioni sono più importanti

  • Identificazione delle aree vincolate del carico di lavoro: Utilizza test di carico o monitoraggio per identificare aree vincolate (memoria, CPU, parametri personalizzati e altri indicatori chiave di prestazione).
  • Studio dei servizi e dei modelli di progettazione

  • Comprensione delle opzioni di prodotto disponibili: Scopri quali sono le opzioni di configurazione relative alla rete disponibili e come possono influire sul carico di lavoro. L'ottimizzazione delle prestazioni del tuo carico di lavoro dipende dalla comprensione della modalità in cui tali opzioni interagiscono con la tua architettura e dell'impatto che hanno sulle prestazioni misurate e sulle prestazioni percepite dagli utenti.
  • Valutazione dei modelli di progettazione di Amazon Builders' Library: Amazon Builders' Library fornisce informazioni dettagliate su come Amazon crea e gestisce la tecnologia. Questi articoli gratuiti presenti nella libreria sono scritti dagli ingegneri senior di Amazon e coprono una varietà di argomenti, tra cui architettura, distribuzione di software e operazioni. Ad esempio, puoi scoprire in che modo Amazon automatizza la distribuzione di software per raggiungere oltre 150 milioni di distribuzioni l'anno, oppure in che modo gli ingegneri di Amazon impiegano principi come lo shuffle sharding per creare sistemi resilienti con disponibilità e tolleranza ai guasti elevate.
    Amazon Builders’ Library
  • Identificazione dell'impatto dei compromessi sui clienti e sull'efficienza

  • Identificazione dei compromessi: Attraverso i parametri e il monitoraggio, identifica le aree del sistema in cui le prestazioni sono scarse. 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.
  • Misurazione dell'impatto dei miglioramenti delle prestazioni

  • Uso di combinazione di strategie: Un sistema Well-Architected si basa su una combinazione di varie strategie riguardanti le prestazioni. Identifica quale strategia determinerà il maggiore impatto positivo su un determinato hotspot o collo di bottiglia. Lo sharding dei dati su più sistemi di database relazionali, ad esempio, può migliorare il throughput complessivo pur continuando a supportare le transazioni e, con ogni shard, il caching può contribuire a ridurre il carico.
  • Scelta di più strategie relative alle prestazioni

  • Scelta di un approccio basato sui dati per far evolvere l'architettura: Man mano che apporti modifiche al carico di lavoro, raccogli e valuta i parametri per stabilire l'impatto dei cambiamenti. Misura gli impatti sul sistema e sugli utenti finali per capire in che modo i compromessi adottati influiscono sul carico di lavoro. Adotta un approccio sistematico, come il test del carico, per valutare se i compromessi migliorano le prestazioni.