Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Gli spazi di Griglia di eventi di Azure utilizzano unità di throughput (TU) per definire la capacità dei tuoi carichi di lavoro. L'autoscala è una funzionalità integrata che regola automaticamente il numero di TU assegnati a uno spazio di nomi in risposta al traffico di eventi in tempo reale e all'utilizzo delle risorse. Puoi abilitare l'Autoscala su qualsiasi namespace Event Grid nel tier Standard .
Quando abiliti l'Autoscala, Event Grid monitora continuamente indicatori chiave di prestazione come la velocità di ingresso degli eventi, la velocità di uscita degli eventi, il numero di connessioni MQTT e la velocità di trasmissione dei messaggi. Quando l'utilizzo supera soglie definite, Event Grid scala il numero di TU verso l'alto o verso il basso entro i limiti minimi e massimi che configuri. Questo comportamento aiuta a mantenere prestazioni costanti durante picchi di traffico e riduce i costi nei periodi di bassa attività, senza richiedere interventi manuali.
Note
Autoscale è disponibile solo per i namespace Event Grid nel livello Standard . Per maggiori informazioni sui tier, vedi Scegli il livello giusto della Griglia Eventi per la tua soluzione.
Perché usare Autoscale
I carichi di lavoro orientati a eventi e IoT sono spesso imprevedibili. Il numero di connessioni, il throughput dei messaggi e i tassi di consegna degli eventi possono variare significativamente in base all'attività aziendale, all'ora del giorno o a fattori esterni. Il provisioning a capacità fissa può portare a due problemi:
- Sottodimensionamento: quando il traffico supera la capacità allocata, gli eventi possono essere soggetti a limitazione, con conseguente aumento della latenza o perdita di messaggi.
- Sovradimensionamento: Quando il traffico è basso, paghi per capacità inutilizzata.
L'autoscala risolve entrambi i problemi ridimensionando automaticamente la capacità del tuo namespace. È particolarmente prezioso per:
- I carichi di lavoro MQTT in cui la distribuzione dei messaggi a più destinatari e la crescita delle sottoscrizioni possono cambiare rapidamente man mano che i dispositivi si connettono e si disconnettono.
- Carichi di lavoro dei broker di eventi con modelli di traffico in ingresso discontinuo, come caricamenti batch periodici o picchi determinati dalla domanda.
- Applicazioni multi-tenant in cui il numero di abbonati e il volume di consegna si spostano tra i tenant.
Abilitare il ridimensionamento automatico
Autoscale è un'esperienza completamente gestita. Lo attivi nello spazio dei nomi e specifichi il numero minimo e massimo di TU. Event Grid gestisce tutte le decisioni di scalabilità internamente. Non è necessario configurare regole di scalabilità individuali, soglie o periodi di recupero.
Puoi abilitare l'autoscala usando il portale Azure, il template Azure Resource Manager o l'API REST. Per maggiori informazioni, vedi Abilita autoscala per uno spazio di nome Event Grid.
Quando abiliti l'autoscala, Event Grid valuta continuamente l'utilizzo in tutte le categorie di scaling. Il sistema aggrega i dati di utilizzo tramite una finestra di revisione e confronta la massima utilizzazione tra le categorie con le soglie interne. Sulla base di questa valutazione, Event Grid aumenta o diminuisce automaticamente i TU all'interno dei tuoi limiti configurati.
Categorie di scalabilità e capacità per TU
La tabella seguente mostra la capacità fornita da ciascuna unità di throughput. Autoscale calcola l'utilizzo in percentuale rispetto a questi limiti su entrambi i carichi di lavoro, broker di eventi e MQTT.
| Categoria | Capacità per TU |
|---|---|
| Ingresso di eventi (numero) | 1.000 eventi/secondo |
| Ingresso di eventi (capacità effettiva) | 1 MB/secondo |
| Uscita di eventi (numero) | 2.000 eventi/secondo |
| Uscita di eventi (capacità effettiva) | 2 MB/secondo |
| Pubblicazioni in ingresso MQTT (numero) | 1.000 messaggi/secondo |
| Pubblicazioni in ingresso MQTT (capacità effettiva) | 1 MB/secondo |
| Pubblicazioni in uscita MQTT (numero) | 1.000 messaggi/secondo |
| Pubblicazioni in uscita MQTT (capacità effettiva) | 1 MB/secondo |
| Risorse client registrate MQTT | 10.000 clienti |
| Connessioni attive MQTT | 10.000 collegamenti |
| MQTT Conserva il Conteggio dei Messaggi | 100 messaggi al secondo |
| Conteggio dei connetti MQTT | 200 richieste/secondo |
Per l'elenco completo dei limiti degli spazi di nomi, vedi quote e limiti di Griglia di eventi di Azure.
Comportamento di scalabilità e soglie
Comportamento di aumento delle prestazioni
Un'operazione di aumento inizia quando anche una sola categoria supera la soglia massima di utilizzo durante il periodo di osservazione. Quando inizia un'operazione di scalabilità verticale, Event Grid calcola il numero di TU necessari per normalizzare l'utilizzo. L'aumento di TU è vincolato dal limite massimo di TU che hai configurato nello spazio dei nomi.
Comportamento di riduzione delle prestazioni
Un'operazione di scal-down inizia quando tutte le categorie scendono costantemente sotto la soglia minima di utilizzo. Quando Event Grid attiva un ridimensionamento verso il basso, calcola il numero di TU necessario per normalizzare il livello di utilizzo. La diminuzione del TU segue il limite minimo di TU che imposti.
Periodi di recupero
Al termine di un'operazione di ridimensionamento, si applica un periodo di raffreddamento prima che possa verificarsi un nuovo ridimensionamento. Il periodo di raffreddamento impedisce il rapido passaggio tra azioni di scala e riduzione della scala, dando così al sistema il tempo di stabilizzarsi sotto la nuova capacità.
Esempio di ridimensionamento
Consideriamo uno spazio di nomi attualmente allocato a 12 TU con il seguente traffico osservato sulla finestra di lookback:
- Ingresso di eventi: 11.000 eventi/secondo
- Velocità di ingresso degli eventi: 3,6 MB/secondo
Passo 1: Calcolare l'utilizzo per categoria
| Categoria | Calcolo | Utilizzo |
|---|---|---|
| Ingresso di eventi (numero) | 11.000 / (12 x 1.000) | 91.7% |
| Ingresso di eventi (capacità effettiva) | 3.6 / (12 x 1) | 30.0% |
Passo 2: Determina la massima utilizzazione
L'utilizzo massimo tra tutte le categorie è del 91,7% (numero di eventi in entrata).
Passo 3: Avviare l'operazione di scalabilità verso l'alto
Poiché il 91,7% supera la soglia di utilizzo per lo scale-up, viene avviata un'operazione di scale-up.
Passaggio 4: Applicare i limiti dello spazio dei nomi
Se il valore massimo del namespace è impostato su 15 TUs, il valore finale viene limitato a 15 TUs.
Se l'operazione di scalamento richiede di aumentare il numero di TU a 15 ma il massimo dello spazio dei nomi è impostato a 20 TU, il conteggio finale di TU dopo l'operazione di scalamento è di 15 TU.
Risultato:
Lo spazio dei nomi aumenta da 12 TU a 15 TU.
Suggerimento
Nei cicli di valutazione successivi, il sistema rivaluta l'utilizzo a 15 TU. Questo processo continua finché l'utilizzo non scende sotto la soglia o non viene raggiunto il limite massimo di TU.
Limiti e considerazioni
- La scalabilità automatica è disponibile solo nel livello Standard.
- Il numero massimo di TU per namespace è 40. Per richiedere un aumento oltre i 40 TU, contattare il supporto Microsoft.
- Il valore minimo di TU per Autoscale è 1.
- Autoscale valuta tutte le categorie insieme. Se solo una categoria ha un utilizzo elevato, viene comunque attivato un aumento. Pianifica i valori minimi e massimi di TU per soddisfare la domanda più alta prevista in tutte le categorie.
- Durante un periodo di raffreddamento, non vengono eseguite operazioni di scalaggio, anche se l'utilizzo cambia. Dimensiona la tua allocazione minima di TU per gestire il carico di base previsto senza richiedere un immediato aumento di scale.
- Le operazioni di scaling vengono eseguite in modo asincrono. Potrebbe esserci un breve periodo tra la decisione di scalabilità e l'entrata in vigore della nuova capacità.