Ridimensionare automaticamente le unità di misura di un Servizio Azure SignalR

Importante

La scalabilità automatica è disponibile solo in Servizio Azure SignalR livello Premium.

Servizio Azure SignalR livello Premium supporta una funzionalità di scalabilità automatica, che è un'implementazione della scalabilità automatica di Monitoraggio di Azure. La scalabilità automatica consente di ridimensionare automaticamente il numero di unità per il Servizio SignalR in modo che corrisponda al carico effettivo nel servizio. La scalabilità automatica consente di ottimizzare le prestazioni e i costi per l'applicazione.

Azure SignalR aggiunge le proprie metriche del servizio. Tuttavia, la maggior parte dell'interfaccia utente è condivisa e comune ad altri servizi di Azure che supportano la scalabilità automatica. Se non si ha familiarità con l'oggetto delle metriche di Monitoraggio di Azure, vedere Aggregazione delle metriche di Monitoraggio di Azure e visualizzare le informazioni illustrate prima di esaminare Servizio SignalR metriche.

Informazioni sulla scalabilità automatica in Servizio SignalR

La scalabilità automatica consente di impostare condizioni che cambieranno dinamicamente le unità allocate a Servizio SignalR mentre il servizio è in esecuzione. Le condizioni di scalabilità automatica sono basate su metriche, ad esempio il carico del server. La scalabilità automatica può essere configurata anche per l'esecuzione in base a una pianificazione, ad esempio ogni giorno tra determinate ore.

Ad esempio, è possibile implementare gli scenari di ridimensionamento seguenti usando la scalabilità automatica.

  • Aumentare le unità quando l'utilizzo della quota di Connessione al di sopra del 70%.
  • Ridurre le unità quando il carico del server è inferiore al 20%.
  • Creare una pianificazione per aggiungere altre unità durante le ore di punta e ridurre le unità durante gli orari di minore attività.

Più fattori influiscono sulle prestazioni di Servizio SignalR. Nessuna metrica offre una visualizzazione completa delle prestazioni del sistema. Ad esempio, se si invia un numero elevato di messaggi, potrebbe essere necessario aumentare il numero di istanze anche se la quota di connessione è relativamente bassa. La combinazione di utilizzo della quota di Connessione e del carico del server fornisce un'indicazione del carico complessivo del sistema. Si applicano le linee guida seguenti.

  • Aumentare il numero di istanze se il conteggio delle connessioni è superiore all'80-90%. L'aumento del numero di connessioni prima dell'esaurimento del numero di connessioni garantisce che il buffer sia sufficiente per accettare nuove connessioni prima che il numero di istanze venga applicato.
  • Aumentare il numero di istanze se il carico del server è superiore all'80-90%. La scalabilità anticipata garantisce che il servizio disponga di capacità sufficiente per mantenere le prestazioni durante l'operazione di scalabilità orizzontale.

L'operazione di scalabilità automatica richiede in genere 3-5 minuti dopo l'attivazione. È importante non modificare troppo spesso le unità. Una buona regola generale consiste nel consentire 30 minuti dalla scalabilità automatica precedente prima di eseguire un'altra operazione di scalabilità automatica. In alcuni casi, potrebbe essere necessario sperimentare per trovare l'intervallo di scalabilità automatica ottimale.

Impostazioni di scalabilità automatica personalizzate

Aprire la pagina delle impostazioni di scalabilità automatica:

  1. Vai al portale di Azure.

  2. Aprire la pagina del servizio SignalR .

  3. Dal menu a sinistra, in Impostazioni scegliere Scalabilità orizzontale.

  4. Selezionare la scheda Configura . Se si dispone di un'istanza di SignalR di livello Premium, verranno visualizzate due opzioni per Scegliere come ridimensionare la risorsa:

    • Scala manuale, che consente di modificare manualmente il numero di unità.
    • Scalabilità automatica personalizzata, che consente di creare condizioni di scalabilità automatica in base alle metriche e/o a una pianificazione dell'ora.
  5. Scegliere Scalabilità automatica personalizzata. Usare questa pagina per gestire le condizioni di scalabilità automatica per il servizio Azure SignalR.

Condizione di scalabilità predefinita

Quando si aprono le impostazioni di scalabilità automatica personalizzate per la prima volta, verrà visualizzata la condizione di scalabilità predefinita già creata automaticamente. Questa condizione di scalabilità viene eseguita quando nessuna delle altre condizioni di scalabilità corrisponde ai criteri impostati per tali condizioni. Non è possibile eliminare la condizione Predefinita , ma è possibile rinominarla, modificare le regole e modificare l'azione eseguita dalla scalabilità automatica.

Non è possibile impostare la condizione predefinita per la scalabilità automatica in un intervallo di giorni o di date specifico. La condizione predefinita supporta solo il ridimensionamento in un intervallo di unità. Per ridimensionare in base a una pianificazione, è necessario aggiungere una nuova condizione di scalabilità.

La scalabilità automatica non diventa effettiva finché non si salva la condizione predefinita per la prima volta dopo aver selezionato Scalabilità automatica personalizzata.

Aggiungere o modificare una condizione di scalabilità

Sono disponibili due opzioni per ridimensionare la risorsa Azure SignalR:

  • Ridimensionare in base a una metrica : scalare entro i limiti di unità in base a una metrica dinamica. Vengono definite una o più regole di scalabilità per impostare i criteri usati per valutare la metrica.
  • Scalare in unità specifiche: scalare fino a un numero specifico di unità in base a un intervallo di date o a una pianificazione ricorrente.

Ridimensiona in base a una metrica

La procedura seguente illustra come aggiungere una condizione per aumentare le unità (aumento delle istanze) quando l'utilizzo della quota di Connessione ion è maggiore del 70% e diminuire le unità (ridimensionamento) quando l'utilizzo della quota di Connessione ion è inferiore al 20%. Gli incrementi o i decrementi vengono eseguiti tra le unità disponibili.

  1. Nella pagina Scalabilità orizzontale selezionare Scalabilità automatica personalizzata per l'opzione Scegliere come ridimensionare la risorsa.

  2. Selezionare Ridimensiona in base a una metrica per la modalità di scalabilità.

  3. Selezionare + Aggiungi una regola. Screenshot of custom rule based on a metric.

  4. Nella pagina Regola di scalabilità seguire questa procedura:

    1. Selezionare una metrica dall'elenco a discesa Nome metrica. In questo esempio si tratta di Connessione utilizzo quota.
    2. Selezionare un operatore e i valori di soglia. In questo esempio sono maggiori di e 70 per soglia metrica per attivare l'azione di scalabilità.
    3. Selezionare un'operazione nella sezione Azione. In questo esempio è impostato su Aumenta.
    4. Selezionare quindi AggiungiScreenshot of default autoscale rule screen.
  5. Selezionare di nuovo + Aggiungi una regola e seguire questa procedura nella pagina Regola di scalabilità :

    1. Selezionare una metrica dall'elenco a discesa Nome metrica. In questo esempio si tratta di Connessione utilizzo quota.
    2. Selezionare un operatore e i valori di soglia. In questo esempio sono minori di e 20 per soglia metrica per attivare l'azione di scalabilità.
    3. Selezionare un'operazione nella sezione Azione. In questo esempio è impostato su Riduci.
    4. Selezionare quindi AggiungiScreenshot Connection Quota Utilization scale rule.
  6. Impostare il numero minimo, massimo e predefinito di unità.

  7. Selezionare Salva sulla barra degli strumenti per salvare l'impostazione di scalabilità automatica.

Scalare in unità specifiche

Seguire questa procedura per configurare la regola per la scalabilità in un intervallo di unità specifico.

  1. Nella pagina Scalabilità orizzontale selezionare Scalabilità automatica personalizzata per l'opzione Scegliere come ridimensionare la risorsa.
  2. Selezionare Scala in unità specifiche per la modalità Scala.
  3. Per Unità selezionare il numero di unità predefinite. Screenshot of scale rule criteria.

Aggiungere altre condizioni

Nella sezione precedente è stato illustrato come aggiungere una condizione predefinita per l'impostazione di scalabilità automatica. Questa sezione illustra come aggiungere altre condizioni all'impostazione di scalabilità automatica.

  1. Nella pagina Scalabilità orizzontale selezionare Scalabilità automatica personalizzata per l'opzione Scegliere come ridimensionare la risorsa.
  2. Selezionare Aggiungi una condizione di scalabilità nel blocco Predefinito . Screenshot of custom scale rule screen.
  3. Verificare che l'opzione Ridimensiona in base a una metrica sia selezionata.
  4. Selezionare + Aggiungi una regola per aggiungere una regola per aumentare le unità quando l'utilizzo della quota di Connessione ion supera il 70%. Seguire i passaggi della sezione condizione predefinita.
  5. Impostare il numero minimo e massimo e predefinito di unità.
  6. È anche possibile impostare una pianificazione in una condizione personalizzata , ma non nella condizione predefinita. È possibile specificare le date di inizio e di fine per la condizione (o) selezionare giorni specifici (lunedì, martedì e così via) di una settimana.
    1. Se si seleziona Specifica le date di inizio/fine, selezionare il fuso orario, la data e l'ora di inizio e l'ora e la data e l'ora di fine (come illustrato nell'immagine seguente) per rendere effettiva la condizione.
    2. Se si seleziona Ripeti giorni specifici, selezionare i giorni della settimana, il fuso orario, l'ora di inizio e l'ora di fine in cui deve essere applicata la condizione.

Passaggi successivi

Per altre informazioni sulla gestione della scalabilità automatica dall'interfaccia della riga di comando di Azure, vedere az monitor autoscale.