Suggerimenti per l'ottimizzazione dei costi di ridimensionamento

Si applica a questa raccomandazione per l'ottimizzazione dei costi di Azure Well-Architected Framework:

CO:12 Ottimizzare i costi di ridimensionamento. Valutare la scalabilità alternativa all'interno delle unità di scala. Prendere in considerazione configurazioni di scalabilità alternative e allinearsi al modello di costo. Le considerazioni devono includere l'utilizzo rispetto ai limiti dell'ereditarietà di ogni istanza, risorsa e limite di unità di scala. Usare strategie per controllare la domanda e l'offerta.

Questa guida fornisce raccomandazioni per l'ottimizzazione dei costi di ridimensionamento. L'ottimizzazione dei costi è il processo di rimozione di inefficienze nel ridimensionamento del carico di lavoro. L'obiettivo è ridurre i costi di ridimensionamento pur rispettando tutti i requisiti non funzionali. Spendere meno per ottenere lo stesso risultato. L'ottimizzazione del ridimensionamento consente di evitare spese non necessarie, provisioning eccessivo e spreco. Consente inoltre di evitare picchi imprevisti nei costi controllando la domanda e la limitazione dell'offerta. Le procedure di scalabilità inefficienti possono causare un aumento del carico di lavoro e dei costi operativi e influire negativamente sull'integrità finanziaria complessiva del carico di lavoro.

Definizioni

Termine Definizione
Scalabilità automatica Approccio di ridimensionamento che aggiunge o rimuove automaticamente le risorse quando viene soddisfatto un set di condizioni.
Metriche dei costi Dati numerici correlati al costo del carico di lavoro.
Riduzione delle prestazioni Una strategia di scalabilità verticale che passa a uno SKU inferiore per fornire meno risorse al carico di lavoro.
Riduci numero istanze Strategia di scalabilità orizzontale che rimuove le istanze per fornire meno risorse al carico di lavoro.
Aumentare il numero di istanze Strategia di scalabilità orizzontale che aggiunge istanze per fornire più risorse al carico di lavoro.
Unità di scala Un gruppo di risorse che si ridimensionano proporzionalmente insieme.
Aumentare le prestazioni Strategia di scalabilità verticale che passa a uno SKU superiore per fornire più risorse al carico di lavoro.
Codice di riferimento del prodotto (SKU) Un livello di servizio per un servizio di Azure.
Dati di utilizzo I dati di utilizzo sono informazioni dirette (reali) o informazioni indirette/rappresentative (proxy) sulla quantità di attività, servizio o applicazione in uso.

Strategie di progettazione chiave

L'obiettivo dell'ottimizzazione dei costi è quello di aumentare e ridurre nell'ultimo momento utile e di ridurre non appena è possibile. Per ottimizzare il ridimensionamento per il carico di lavoro, è possibile valutare le opzioni di ridimensionamento alternative all'interno delle unità di scala e allinearle al modello di costo. Un'unità di scala rappresenta un raggruppamento specifico di risorse che possono essere ridimensionate in modo indipendente o insieme. È consigliabile progettare unità di scala per gestire una quantità specifica di carico e possono includere più istanze, server o altre risorse. È necessario valutare l'efficacia dei costi delle unità di scala del carico di lavoro e delle alternative del modello.

Se non si usa il ridimensionamento, vedere indicazioni sul ridimensionamento del carico di lavoro. È necessario determinare se l'applicazione può essere ridimensionata. Le applicazioni senza stato sono più facili da ridimensionare perché possono gestire più richieste contemporaneamente. Valutare anche se l'applicazione viene compilata usando i principi dei sistemi distribuiti. I sistemi distribuiti possono gestire un carico maggiore distribuendo il carico di lavoro tra più nodi. Tuttavia, un'applicazione singleton è progettata per avere una sola istanza in esecuzione in qualsiasi momento. Pertanto, il ridimensionamento potrebbe non essere appropriato per tutti i carichi di lavoro.

Valutare la scalabilità orizzontale rispetto all'aumento delle prestazioni

La valutazione della scalabilità orizzontale rispetto all'aumento delle prestazioni implica stabilire la scelta più vantaggiosa tra il potenziamento delle risorse all'interno di un singolo sistema (scalabilità verticale) e l'aggiunta di ulteriori istanze dello stesso sistema (scalabilità orizzontale), tenendo conto di diversi elementi quali costi, esigenze di carico di lavoro e tempi di inattività tollerabili. La scelta del giusto approccio al ridimensionamento può comportare risparmi significativi, garantendo che si paghi solo per quello che è necessario, pur rispettando gli standard di prestazioni e affidabilità.

L'obiettivo è determinare la scelta più conveniente in base ai prezzi del piano di servizio, ai tratti del carico di lavoro, ai tempi di inattività accettabili e al modello di costo. Per alcuni, potrebbe essere più economico optare per istanze più costose in meno numeri. Viceversa, per altri, un livello più economico con più istanze potrebbe essere migliore. Per prendere una decisione informata, è necessario analizzare i dati reali o rappresentativi dalla configurazione e valutare i costi relativi di ogni strategia. Per valutare l'approccio più conveniente, prendere in considerazione queste raccomandazioni:

  • Raccogliere dati di utilizzo: raccogliere dati di produzione effettivi o dati proxy che rappresentano i modelli di utilizzo del carico di lavoro e l'utilizzo delle risorse. Questi dati devono includere metriche come l'utilizzo della CPU, l'utilizzo della memoria, il traffico di rete e qualsiasi altra metrica pertinente che influisce sul costo del ridimensionamento.

  • Definire le metriche dei costi: identificare le metriche dei costi rilevanti per il carico di lavoro, ad esempio il costo all'ora, il costo per transazione o il costo per unità di utilizzo delle risorse. Queste metriche consentono di confrontare l'efficacia dei costi delle diverse opzioni di ridimensionamento.

  • Raccogliere dati di utilizzo: raccogliere dati di produzione effettivi o dati proxy che rappresentano i modelli di utilizzo del carico di lavoro e l'utilizzo delle risorse. Questi dati devono includere metriche come l'utilizzo della CPU, l'utilizzo della memoria, il traffico di rete e qualsiasi altra metrica pertinente che influisce sul costo della scalabilità

  • Definire le metriche dei costi: identificare le metriche dei costi rilevanti per il carico di lavoro, ad esempio il costo all'ora, il costo per transazione o il costo per unità di utilizzo delle risorse. Queste metriche consentono di confrontare l'efficacia dei costi delle diverse opzioni di ridimensionamento.

  • Fare riferimento ai requisiti: quando si decide tra strategie di scalabilità orizzontale e scalabilità orizzontale, prendere in considerazione i requisiti di affidabilità, prestazioni e scalabilità del carico di lavoro. La scalabilità orizzontale può migliorare l'affidabilità tramite ridondanza. La scalabilità verticale aumenta la capacità di una risorsa, ma potrebbe essere necessario limitare la scalabilità verticale.

  • Prendere in considerazione i limiti delle risorse: quando si valutano le opzioni di ridimensionamento, è importante considerare i limiti intrinseci di ogni istanza, risorsa e limite di unità di scala. Tenere presente i limiti di scalabilità superiore per ogni risorsa e pianificare di conseguenza. Tenere inoltre presenti i limiti della sottoscrizione e di altre risorse.

  • Scalabilità dei test: creare test per diversi scenari di scalabilità, incluse le opzioni di scalabilità orizzontale e scalabilità verticale. Applicazione dei dati di utilizzo, simulare il comportamento del carico di lavoro in configurazioni di ridimensionamento diverse. Eseguire test reali usando gli scenari di scalabilità modellati.

  • Calcolare i costi: usare i dati raccolti e le metriche dei costi per calcolare i costi associati a ogni configurazione di ridimensionamento. Prendere in considerazione fattori come i prezzi dell'istanza, l'utilizzo delle risorse e gli eventuali costi aggiuntivi correlati alla scalabilità.

Ottimizzare la scalabilità automatica

L'ottimizzazione dei criteri di scalabilità automatica comporta la ridefinizione della scalabilità automatica per reagire alle modifiche al carico in base ai requisiti non funzionali del carico di lavoro. È possibile limitare le attività di ridimensionamento eccessive modificando le soglie e usando il periodo di raffreddamento corretto. Per ottimizzare la scalabilità automatica, prendere in considerazione le raccomandazioni seguenti:

  • Analizzare i criteri di scalabilità automatica correnti: comprendere i criteri esistenti e il relativo comportamento in risposta a diversi livelli di carico.

  • Fare riferimento ai requisiti non funzionali: identificare i requisiti non funzionali specifici da considerare, ad esempio il tempo di risposta, l'utilizzo delle risorse o il costo.

  • Modificare le soglie di ridimensionamento: modificare le soglie di ridimensionamento in base alle caratteristiche del carico di lavoro e ai requisiti non funzionali. Impostare le soglie per aumentare o ridurre le prestazioni in base a fattori come l'utilizzo della CPU nel tempo, il traffico di rete o la lunghezza della coda.

  • Regolare un periodo di raffreddamento: regolare il periodo di raffreddamento per evitare attività di ridimensionamento eccessive attivate da picchi di carico temporanei. Un periodo di raffreddamento introduce un ritardo tra gli eventi di ridimensionamento, consentendo al sistema di stabilizzarsi prima di aumentare ulteriormente le azioni di ridimensionamento.

  • Monitorare e ottimizzare: monitorare continuamente il comportamento e le prestazioni del sistema. Analizzare le attività di ridimensionamento e modificare i criteri in base alle esigenze per ottimizzare i costi e soddisfare i requisiti non funzionali desiderati.

Compromesso: la riduzione del numero di eventi di ridimensionamento aumenta le probabilità di riscontrare problemi correlati al ridimensionamento. Ciò significa che si elimina il cuscino o buffer aggiuntivo che potrebbe aiutare a gestire potenziali problemi o ritardi dal ridimensionamento.

Usare il ridimensionamento basato su eventi

La scalabilità automatica basata su eventi consente all'applicazione di regolare dinamicamente le risorse in base a eventi o trigger specifici anziché a metriche tradizionali come l'utilizzo della CPU o della memoria. Ad esempio, la scalabilità automatica basata su eventi (KEDA) di Kubernetes può ridimensionare le applicazioni in base a scaler come la lunghezza di un argomento Kafka. La precisione consente di evitare fluttuazioni di ridimensionamento non necessarie e sprechi di risorse. Un livello elevato di precisione ottimizza infine i costi. Per usare il ridimensionamento basato su eventi, seguire questa procedura:

  • Scegliere un'origine evento: determinare l'origine evento che attiva il ridimensionamento dell'unità di scala. Un'origine può essere una coda di messaggi, una piattaforma di streaming o qualsiasi altro sistema basato su eventi.

  • Configurare l'inserimento di eventi: configurare l'applicazione per l'utilizzo di eventi dall'origine evento scelta. In genere comporta la creazione di una connessione, la sottoscrizione agli argomenti o alle code pertinenti e l'elaborazione degli eventi in ingresso.

  • Implementare la logica di ridimensionamento: scrivere la logica che determina quando e come deve essere ridimensionata l'unità di scala in base agli eventi in ingresso. Questa logica deve considerare fattori come il numero di eventi, la frequenza degli eventi in ingresso o qualsiasi altra metrica pertinente.

  • Integrazione con i meccanismi di ridimensionamento: a seconda dell'ambiente di runtime dell'applicazione, è possibile usare meccanismi di ridimensionamento diversi per modificare le risorse allocate all'applicazione.

  • Configurare le regole di ridimensionamento: definire le regole di ridimensionamento che specificano il modo in cui l'unità di scala deve essere ridimensionata in risposta agli eventi. Queste regole possono essere basate su soglie, modelli o altri criteri allineati ai requisiti dell'applicazione. Le soglie di ridimensionamento devono essere correlate alle metriche aziendali. Ad esempio, se si aggiungono altre due istanze, è possibile supportare 50 altri utenti nell'elaborazione del carrello acquisti.

  • Test e monitoraggio: convalidare il comportamento dell'implementazione del ridimensionamento basato su eventi testandolo con scenari di eventi diversi. Monitorare le azioni di ridimensionamento e assicurarsi che le azioni siano allineate alle aspettative.

Il compromesso Configurazione e ottimizzazione della scalabilità automatica basata su eventi può essere complesso e la configurazione non corretta può comportare il provisioning eccessivo o il sottoprovisioning delle risorse.

Ottimizzare la domanda e l'offerta

Controlla la domanda contro la tua offerta. Nei carichi di lavoro in cui l'utilizzo determina la scalabilità, i costi sono correlati al ridimensionamento. Per ottimizzare i costi di ridimensionamento, è possibile ridurre al minimo la spesa di ridimensionamento. È possibile eseguire l'offload della domanda distribuendo la domanda ad altre risorse oppure è possibile ridurre la domanda implementando code prioritarie, offload del gateway, buffering e limitazione della velocità. Entrambe le strategie possono impedire costi indesiderati a causa del ridimensionamento e dell'utilizzo delle risorse. È anche possibile controllare l'offerta riducendo i limiti di ridimensionamento. Per ottimizzare la domanda e l'offerta del carico di lavoro, prendere in considerazione le raccomandazioni seguenti.

Offload demand

L'offload della domanda si riferisce alla pratica di distribuzione o trasferimento della domanda di risorse ad altre risorse o servizi. È possibile usare diverse tecnologie o strategie:

  • Memorizzazione nella cache: usare la memorizzazione nella cache per archiviare i dati o il contenuto a cui si accede di frequente, riducendo il carico nell'infrastruttura back-end. Ad esempio, usare le reti per la distribuzione di contenuti (CDN) per memorizzare nella cache e gestire il contenuto statico, riducendo la necessità di ridimensionare il back-end. Tuttavia, non tutti i carichi di lavoro possono memorizzare nella cache i dati. I carichi di lavoro che richiedono dati aggiornati e in tempo reale, ad esempio carichi di lavoro di trading o di gioco, non devono usare una cache. I dati memorizzati nella cache sarebbero obsoleti e irrilevanti per l'utente.

    Compromesso. La memorizzazione nella cache può presentare problemi in termini di invalidazione, coerenza e gestione della scadenza della cache. È importante progettare attentamente e implementare strategie di memorizzazione nella cache per evitare potenziali compromessi.

  • Offload del contenuto: offload del contenuto in servizi o piattaforme esterni per ridurre il carico di lavoro nell'infrastruttura. Ad esempio, anziché archiviare i file video nel server primario, è possibile ospitare questi file in un servizio di archiviazione separato indipendente dal server primario. È possibile caricare questi file di grandi dimensioni direttamente dal servizio di archiviazione. Questo approccio libera le risorse nei server, consentendo di usare un server più piccolo. Può essere più economico archiviare file di grandi dimensioni in un archivio dati separato. È possibile usare una rete CDN per migliorare le prestazioni.

  • Bilanciamento del carico: distribuire le richieste in ingresso tra più server usando il bilanciamento del carico. Il bilanciamento del carico distribuisce uniformemente il carico di lavoro e impedisce a qualsiasi singolo server di diventare sovraccarico. I servizi di bilanciamento del carico ottimizzano l'utilizzo delle risorse e migliorano l'efficienza dell'infrastruttura.

  • Offload del database: ridurre il carico sul server applicazioni principale eseguendo l'offload delle operazioni di database in un server di database separato o in un servizio specializzato. Ad esempio, usare una rete CDN per la memorizzazione nella cache del contenuto statico e una cache Redis per la memorizzazione nella cache del contenuto dinamico (dati dal database). Anche le tecniche come il partizionamento orizzontale del database, le repliche in lettura o l'uso di servizi di database gestiti possono ridurre il carico.

    Compromesso: l'offload di attività specifiche per risorse alternative consente di ridurre o evitare costi e scalabilità aggiuntivi associati al ridimensionamento. Tuttavia, è importante considerare le sfide operative e di manutenzione che potrebbero verificarsi dall'offload. L'esecuzione di un'analisi completa dei vantaggi sui costi è fondamentale quando si selezionano le tecniche di offload più appropriate per il carico di lavoro. Questa analisi garantisce che il metodo scelto sia efficiente e fattibile in relazione ai risparmi previsti e alle complessità operative.

Ridurre la domanda

La riduzione della domanda di risorse implica l'implementazione di strategie che consentono di ridurre al minimo l'utilizzo delle risorse in un carico di lavoro. L'offload della domanda sposta la domanda ad altre risorse. La riduzione della domanda riduce la domanda sul carico di lavoro. La riduzione della domanda consente di evitare il provisioning eccessivo delle risorse e il pagamento per la capacità inutilizzata o sottoutilizzata. È consigliabile usare modelli di progettazione a livello di codice per ridurre la domanda sulle risorse del carico di lavoro. Per ridurre la domanda tramite modelli di progettazione, seguire questa procedura:

  • Comprendere i modelli di progettazione: acquisire familiarità con vari modelli di progettazione che promuovono l'ottimizzazione delle risorse.

  • Analizzare i requisiti del carico di lavoro: valutare i requisiti specifici del carico di lavoro, inclusi i modelli di domanda previsti, i carichi di picco e le esigenze delle risorse.

  • Selezionare i modelli di progettazione appropriati: scegliere i modelli di progettazione allineati ai requisiti e agli obiettivi del carico di lavoro. Ad esempio, se il carico di lavoro sperimenta una variazione della domanda, i modelli di ridimensionamento e limitazione basati su eventi possono aiutare a gestire il carico di lavoro allocando in modo dinamico le risorse. Applicare i modelli di progettazione selezionati all'architettura del carico di lavoro. Potrebbe essere necessario separare i componenti del carico di lavoro, inserire in contenitori le applicazioni, ottimizzare l'utilizzo dell'archiviazione e altro ancora.

  • Monitoraggio e ottimizzazione continui: valutare regolarmente l'efficacia dei modelli di progettazione implementati e regolare in base alle esigenze. Monitorare l'utilizzo delle risorse, le metriche delle prestazioni e le opportunità di ottimizzazione dei costi.

Seguendo questi passaggi e usando i modelli di progettazione appropriati, è possibile ridurre la domanda di risorse, ottimizzare i costi e garantire il funzionamento efficiente dei carichi di lavoro.

Usare questi modelli di progettazione per ridurre la domanda:

  • Cache aside: il modello controlla la cache per verificare se i dati sono già archiviati in memoria. Se i dati vengono trovati nella cache, l'applicazione può recuperare e restituire rapidamente i dati, riducendo la necessità di eseguire query sull'archivio dati permanente.

  • Verifica attestazioni: separando i dati dal flusso di messaggistica, questo modello riduce le dimensioni dei messaggi e supporta una soluzione di messaggistica più conveniente.

  • Consumer concorrenti: questo modello gestisce in modo efficiente gli elementi in una coda applicando l'elaborazione distribuita e simultanea. Questo modello di progettazione ottimizza i costi ridimensionando i costi in base alla profondità della coda e impostando limiti per il numero massimo di istanze consumer simultanee.

  • Consolidamento delle risorse di calcolo: questo modello aumenta la densità e consolida le risorse di calcolo combinando più applicazioni o componenti nell'infrastruttura condivisa. Ottimizza l'utilizzo delle risorse, evitando la capacità di provisioning inutilizzata e riducendo i costi.

  • Indicatori di distribuzione: l'uso dei francobolli di distribuzione offre diversi vantaggi, ad esempio gruppi di dispositivi di distribuzione geografica, distribuzione di nuove funzionalità in francobolli specifici e osservazione dei costi per dispositivo. Gli indicatori di distribuzione consentono una migliore scalabilità, tolleranza di errore e un utilizzo efficiente delle risorse.

  • Offload del gateway: questo modello esegue l'offload dell'elaborazione delle richieste in un dispositivo gateway, reindirizzando i costi dalle risorse per nodo all'implementazione del gateway. L'uso di questo modello di progettazione può comportare un costo inferiore di proprietà in un modello di elaborazione centralizzato.

  • Autore/sottoscrittore: questo modello separa i componenti in un'architettura, sostituendo la comunicazione diretta con un broker di messaggi intermedio o un bus di eventi. Consente un approccio basato su eventi e la fatturazione basata sul consumo, evitando il provisioning eccessivo.

  • Livellamento del carico basato su coda: il criterio memorizza nel buffer le richieste o le attività in ingresso in una coda. Il buffering riduce il carico di lavoro e riduce la necessità di effettuare il provisioning eccessivo delle risorse per gestire il carico di picco. Le richieste in ingresso vengono elaborate in modo asincrono per ridurre i costi.

  • Partizionamento orizzontale: questo modello indirizza richieste specifiche a una destinazione logica, consentendo ottimizzazioni con la condivisione dei dati. Il partizionamento orizzontale può comportare risparmi sui costi usando più istanze di risorse di calcolo o archiviazione con specifiche inferiori.

  • Hosting di contenuto statico: questo modello offre contenuti statici in modo efficiente usando una piattaforma di hosting progettata per questo scopo. Evita l'uso di host applicazioni dinamici più costosi, ottimizzando l'utilizzo delle risorse.

  • Limitazione: questo modello pone limiti alla velocità (limitazione della velocità) o alla velocità effettiva delle richieste in ingresso a una risorsa o a un componente. Consente di informare la modellazione dei costi e può essere collegata direttamente al modello aziendale dell'applicazione.

  • Chiavi di controllo: questo modello concede l'accesso sicuro ed esclusivo a una risorsa senza coinvolgere più componenti, riducendo la necessità di risorse intermedie e migliorando l'efficienza.

Alimentazione del controllo

La definizione di un limite superiore per l'importo che si è disposti a spendere per una determinata risorsa o servizio è un modo per controllare l'offerta. È una strategia importante per controllare i costi e garantire che le spese non superino un determinato livello. Stabilire un budget e monitorare la spesa per assicurarsi che rimanga entro l'importo definito. È possibile usare piattaforme di gestione dei costi, avvisi del budget o tenere traccia dei modelli di utilizzo e di spesa. Alcuni servizi consentono di limitare le tariffe di fornitura e limite ed è consigliabile usare tali funzionalità dove utile.

Il controllo della fornitura si riferisce alla definizione di un limite superiore per l'importo che si è disposti a spendere per una determinata risorsa o servizio. È una strategia importante perché aiuta a controllare i costi e garantisce che le spese non superino un determinato livello. Stabilire un budget e monitorare la spesa per assicurarsi che rimanga entro la soglia definita. È possibile usare piattaforme di gestione dei costi, avvisi del budget o tenere traccia dei modelli di utilizzo e di spesa. Alcuni servizi consentono di limitare le tariffe di fornitura e limite ed è consigliabile usare tali funzionalità dove utile.

Compromesso: i limiti più restrittivi possono comportare la mancata scalabilità quando la domanda aumenta, con un potenziale impatto sull'esperienza utente. Potrebbe causare arresti o impossibilità di rispondere al caricamento. È importante trovare un equilibrio tra l'ottimizzazione dei costi e garantire che siano disponibili risorse sufficienti per soddisfare le esigenze aziendali.

Facilitazione di Azure

Valutazione della scalabilità orizzontale rispetto all'aumento delle prestazioni: Azure offre un ambiente di test in cui è possibile distribuire e testare configurazioni di scalabilità diverse. Usando i dati effettivi del carico di lavoro o proxy, è possibile simulare scenari reali e misurare gli effetti sui costi. Azure offre strumenti e servizi per i test delle prestazioni, i test di carico e il monitoraggio, che consentono di valutare l'efficacia dei costi di scale out rispetto alle opzioni di aumento delle prestazioni.

Azure offre raccomandazioni sulla gestione dei costi tramite vari strumenti e servizi, ad esempio Azure Advisor. Queste raccomandazioni analizzano i modelli di utilizzo, l'utilizzo delle risorse e le configurazioni di ridimensionamento per fornire informazioni dettagliate e suggerimenti per ottimizzare i costi.

Test di carico di Azure è un servizio di test del carico completamente gestito che genera un carico su larga scala. Il servizio simula il traffico per le tue applicazioni, indipendentemente dalla posizione in cui sono ospitate. Gli sviluppatori, i tester e i tecnici di controllo della qualità possono usare i test di carico per ottimizzare le prestazioni, la scalabilità o la capacità dell'applicazione.

Ottimizzazione della scalabilità automatica: molti servizi di calcolo di Azure supportano la distribuzione di più istanze identiche e ottimizzano rapidamente le soglie e i criteri di ridimensionamento. Azure offre funzionalità di scalabilità automatica che consentono di regolare automaticamente il numero di istanze o risorse in base alla domanda del carico di lavoro. È possibile definire regole di ridimensionamento e soglie per attivare azioni di scalabilità orizzontale o scalabilità orizzontale. Usando la scalabilità automatica, è possibile ottimizzare l'allocazione delle risorse e l'efficienza dei costi ridimensionando in modo dinamico le risorse in base alla domanda effettiva.

Azure gestisce un elenco di limiti di sottoscrizione e di servizio. Esiste un limite generale al numero di istanze di una risorsa che è possibile distribuire in ogni gruppo di risorse con alcune eccezioni. Per altre informazioni, vedere Limiti delle istanze delle risorse per gruppo di risorse.

Ottimizzazione della domanda e dell'offerta: Monitoraggio di Azure fornisce informazioni dettagliate sulle prestazioni e sull'integrità delle applicazioni e dell'infrastruttura. È possibile usare Monitoraggio di Azure per monitorare il carico delle risorse e analizzare le tendenze nel tempo. Usando le metriche e i log raccolti da Monitoraggio di Azure, è possibile identificare le aree in cui potrebbero essere necessarie modifiche alla scalabilità. Queste informazioni possono guidare il perfezionamento dei criteri di scalabilità automatica per assicurarsi che siano allineati ai requisiti non funzionali e agli obiettivi di ottimizzazione dei costi.

  • Fornitura di offload: Azure ha un cloud moderno rete per la distribuzione di contenuti (rete CDN) denominato Frontdoor di Azure e servizi di memorizzazione nella cache (cache di Azure per Redis e Azure Cache HPC). La rete CDN memorizza nella cache il contenuto più vicino agli utenti finali, riducendo la latenza di rete e migliorando i tempi di risposta. La memorizzazione nella cache archivia una copia dei dati davanti all'archivio dati principale, riducendo la necessità di richieste ripetute al back-end. Usando la rete CDN e i servizi di memorizzazione nella cache, è possibile ottimizzare le prestazioni e ridurre il carico sui server per un potenziale risparmio sui costi.

  • Controllo della fornitura: Azure consente anche di impostare i limiti delle risorse per il carico di lavoro cloud. Definendo i limiti delle risorse, è possibile assicurarsi che il carico di lavoro rimanga all'interno delle risorse allocate ed evitare costi non necessari. Azure offre vari meccanismi per l'impostazione dei limiti delle risorse, ad esempio quote, criteri e avvisi relativi al budget. Questi meccanismi consentono di monitorare e controllare l'utilizzo delle risorse.

    Gestione API possono limitare e limitare le richieste. La possibilità di limitare le richieste in ingresso è uno dei ruoli fondamentali di Gestione API di Azure. Tramite il controllo della frequenza delle richieste o del totale delle richieste o dei dati trasferiti, Gestione API consente ai provider di API di proteggere le API da abusi e di aggiungere valore a diversi livelli di prodotto API.

Elenco di controllo per l'ottimizzazione dei costi

Fare riferimento al set completo di raccomandazioni.