Riepilogo

Completato

Ecco alcuni dei punti chiave illustrati in questo modulo sull'elasticità:

  • Le macchine virtuali e altre risorse cloud hanno raramente carichi costanti. Al contrario, sperimentano carichi variabili, che a volte variano nel tempo di un ordine di grandezza o più.
  • Dimensionare la capacità di calcolo sulla base dei picchi di carico garantisce la qualità del servizio (QoS), ma comporta un aumento dei costi e dell'utilizzo di energia.
  • Per elasticità si intende la possibilità di aggiungere risorse per gestire carichi più elevati e rimuovere risorse quando il carico diminuisce.
  • L'elasticità nel cloud viene realizzata ridimensionando risorse quali macchine virtuali e database.
  • Per aumento e riduzione delle istanze (scalabilità orizzontale) si intende la possibilità di aumentare e ridurre il numero di risorse dedicate a un'attività, ad esempio aumentare il numero di macchine virtuali che servono gli utenti del sito Web da 10 a 15.
  • Per aumento e riduzione delle prestazioni (scalabilità verticale) si intende la possibilità di sostituire le risorse esistenti con altre più o meno potenti, ad esempio sostituire una macchina virtuale del server Web contenente 2 core e 4 GB di RAM con una contenente 4 core e 8 GB di RAM.
  • Il ridimensionamento delle risorse in base alla domanda mantiene l'utilizzo di risorse relativamente costante, riduce i costi e migliora l'utilizzo di energia.
  • Il ridimensionamento automatico consente di ridimensionare le risorse in base a regole o criteri stabiliti da un amministratore cloud. Le regole o i criteri possono essere basati sul tempo, su metriche o su entrambi. Un esempio di ridimensionamento automatico basato su metriche è portare online istanze aggiuntive quando l'utilizzo medio della CPU raggiunge una soglia prestabilita, ad esempio il 70%.
  • Il ridimensionamento automatico basato sul tempo, noto anche come ridimensionamento automatico pianificato, è ideale quando i carichi sono ciclici e prevedibili.
  • Il ridimensionamento automatico basato su metriche consente di gestire carichi sia prevedibili che imprevedibili.
  • Un bilanciamento efficace del carico è fondamentale per l'implementazione di servizi cloud scalabili.
  • I servizi di bilanciamento del carico usano diversi tipi di algoritmi per distribuire il carico, tra cui algoritmi round robin e basati su hash.
  • Alcuni servizi di bilanciamento del carico provano a inviare le richieste in modo più intelligente, usando metriche come il tempo di esecuzione delle richieste e l'utilizzo di CPU in ogni nodo.
  • I servizi di bilanciamento del carico aumentano inoltre la disponibilità, monitorando l'integrità delle risorse back-end e rilevando quando queste risorse non sono disponibili.
  • Poiché un singolo servizio di bilanciamento del carico rappresenta un singolo punto di guasto, i servizi di bilanciamento del carico vengono spesso distribuiti in coppie.
  • L'elaborazione serverless offre diversi vantaggi, tra cui prezzi basati sul consumo, scalabilità automatica e costi amministrativi ridotti
  • Un esempio di elaborazione serverless è rappresentato dalle funzioni serverless, che consentono di caricare codice nel cloud e definire quando eseguirlo.
  • Un altro esempio sono i flussi di lavoro serverless, che consentono di definire flussi di lavoro aziendali, in genere usando finestre di progettazione grafica e senza scrivere codice, e di specificare quando eseguirli.
  • L'elaborazione serverless si estende anche ai database, che vengono ridimensionati per soddisfare la domanda posta su di essi.