Pianifica l'allocazione delle risorse

Last reviewed 2024-12-06 UTC

Questo principio del pilastro dell'ottimizzazione del rendimento del Google Cloud Well-Architected Framework fornisce consigli per aiutarti a pianificare le risorse per i tuoi carichi di lavoro in Google Cloud. Sottolinea l'importanza di definire requisiti granulari prima di progettare e sviluppare applicazioni per il deployment o la migrazione nel cloud.

Panoramica del principio

Per soddisfare i requisiti aziendali, è importante definire i requisiti di rendimento delle applicazioni prima della progettazione e dello sviluppo. Definisci questi requisiti nel modo più granulare possibile per l'applicazione nel suo complesso e per ogni livello dello stack dell'applicazione. Ad esempio, nel livello di archiviazione devi considerare il throughput e le operazioni di I/O al secondo (IOPS) di cui hanno bisogno le applicazioni.

Fin dall'inizio, progetta le applicazioni con un occhio di riguardo alle prestazioni e alla scalabilità. Considera fattori come il numero di utenti, il volume di dati e la potenziale crescita nel tempo.

I requisiti di prestazioni per ogni workload variano e dipendono dal tipo di workload. Ogni workload può contenere un mix di sistemi e servizi di componenti che hanno insiemi unici di caratteristiche di rendimento. Ad esempio, un sistema responsabile dell'elaborazione batch periodica di set di dati di grandi dimensioni ha esigenze di rendimento diverse rispetto a una soluzione di virtualizzazione interattiva del desktop. Le strategie di ottimizzazione devono soddisfare le esigenze specifiche di ogni carico di lavoro.

Seleziona servizi e funzionalità in linea con gli obiettivi di rendimento di ogni carico di lavoro. Per l'ottimizzazione del rendimento, non esiste una soluzione universale. Quando ottimizzi ogni workload, l'intero sistema può raggiungere prestazioni ed efficienza ottimali.

Considera le seguenti caratteristiche del workload che possono influenzare i tuoi requisiti di prestazioni:

  • Archetipo di deployment: l'archetipo di deployment che selezioni per un'applicazione può influenzare la tua scelta di prodotti e funzionalità, che a loro volta determinano il rendimento che puoi aspettarti dalla tua applicazione.
  • Posizionamento delle risorse: quando selezioni una Google Cloud regione per le risorse dell'applicazione, ti consigliamo di dare la priorità alla bassa latenza per gli utenti finali, rispettare le normative sulla località dei dati e garantire la disponibilità dei prodotti e servizi Google Cloud richiesti.
  • Connettività di rete: scegli servizi di rete che ottimizzano l'accesso ai dati e la distribuzione dei contenuti. Sfrutta la rete globale, i backbone ad alta velocità, le località di interconnessione e i servizi di memorizzazione nella cache di Google Cloud.
  • Opzioni di hosting delle applicazioni: quando selezioni una piattaforma di hosting, devi valutare i vantaggi e gli svantaggi in termini di prestazioni di ogni opzione. Ad esempio, considera le piattaforme bare metal, le macchine virtuali, i container e le piattaforme serverless.
  • Strategia di archiviazione: scegli una strategia di archiviazione ottimale in base ai tuoi requisiti di rendimento.
  • Configurazioni delle risorse: il tipo di macchina, le IOPS e la velocità effettiva possono influire in modo significativo sul rendimento. Inoltre, all'inizio della fase di progettazione, devi considerare le funzionalità di sicurezza appropriate e il loro impatto sulle risorse. Quando pianifichi le funzionalità di sicurezza, preparati ad accettare i compromessi necessari in termini di prestazioni per evitare effetti imprevisti.

Consigli

Per garantire un'allocazione ottimale delle risorse, prendi in considerazione i consigli riportati nelle sezioni seguenti.

Configurare e gestire le quote

Assicurati che la tua applicazione utilizzi solo le risorse necessarie, come memoria, spazio di archiviazione e potenza di elaborazione. Una sovra-allocazione può comportare spese non necessarie, mentre una sotto-allocazione potrebbe comportare un peggioramento delle prestazioni.

Per supportare lo scaling elastico e garantire la disponibilità di risorse adeguate, monitora regolarmente la capacità delle quote. Inoltre, monitora l'utilizzo della quota per identificare potenziali vincoli di scalabilità o problemi di sovra-allocazione e poi prendere decisioni informate sull'allocazione delle risorse.

Educare e promuovere la consapevolezza

Informa gli utenti dei requisiti di rendimento e fornisci risorse didattiche sulle tecniche efficaci di gestione del rendimento.

Per valutare i progressi e identificare le aree di miglioramento, documenta regolarmente le prestazioni target e quelle effettive. Esegui test di carico sulla tua applicazione per trovare potenziali punti di interruzione e capire come scalare l'applicazione.

Monitorare le metriche sul rendimento

Utilizza Cloud Monitoring per analizzare le tendenze nelle metriche di rendimento, gli effetti degli esperimenti, definire avvisi per le metriche critiche ed eseguire analisi retrospettive.

Active Assist è un insieme di strumenti che possono fornire approfondimenti e consigli per ottimizzare l'utilizzo delle risorse. Questi consigli possono aiutarti a modificare l'allocazione delle risorse e a migliorare il rendimento.