Come ridimensionare un'istanza di Servizio Azure SignalR?

Questo articolo illustra come ridimensionare l'istanza di Servizio Azure SignalR. Esistono due scenari per la scalabilità, la scalabilità verticale e la scalabilità orizzontale.

  • Aumentare le prestazioni: ottenere più unità, connessioni, messaggi e altro ancora. È possibile aumentare le prestazioni modificando il piano tariffario da Gratuito a Standard.
  • Scalabilità orizzontale: aumentare il numero di unità SignalR. È possibile aumentare il numero di istanze fino a 100 unità. Sono disponibili opzioni di unità limitate da selezionare per il ridimensionamento: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20, 30, 40, 50, 60, 70, 80, 90 e 100 unità per una singola istanza di Servizio SignalR. Se si desidera ridimensionare oltre 100 unità, lo SKU Premium_P2 offre funzionalità espanse.

L'applicazione delle impostazioni di scalabilità richiede alcuni minuti. In rari casi, l'applicazione può richiedere circa 30 minuti. Il ridimensionamento non richiede la modifica del codice o la ridistribuire l'applicazione server.

Per informazioni sui prezzi e sulle capacità dei singoli Servizio SignalR, vedere Servizio Azure SignalR Dettagli prezzi.

Nota

La modifica di Servizio SignalR dal livello Gratuito al livello Standard o Premium o viceversa, l'IP del servizio pubblico verrà modificato e in genere sono necessari 30-60 minuti per propagare la modifica ai server DNS nell'intera rete Internet. Il servizio potrebbe non essere raggiungibile prima dell'aggiornamento del DNS. In genere non è consigliabile modificare troppo spesso il piano tariffario.

Aumentare le prestazioni in portale di Azure

  1. Accedere al portale di Azure nel browser.

  2. Nella pagina Servizio SignalR selezionare Scale Up dal menu a sinistra.

  3. Fare clic su Cambia e selezionare Livello Standard nel pannello a comparsa.

    Screenshot of scaling up on Portal.

  4. Seleziona Salva.

Scalabilità orizzontale in portale di Azure

  1. Accedere al portale di Azure nel browser.

  2. Nella pagina Servizio SignalR selezionare Scale Out dal menu a sinistra.

  3. Scegliere l'unità nel settore Scala manuale.

    Screenshot of scaling out on Portal.

  4. Seleziona Salva.

Ridimensionare la cache tramite l'interfaccia della riga di comando di Azure

Questo script crea una nuova risorsa Servizio SignalR di livello gratuito e un nuovo gruppo di risorse e la ridimensiona fino al livello Standard.

#!/bin/bash

# Generate a unique suffix for the service name
let randomNum=$RANDOM*$RANDOM

# Generate a unique service and group name with the suffix
SignalRName=SignalRTestSvc$randomNum
#resource name must be lowercase
mySignalRSvcName=${SignalRName,,}
myResourceGroupName=$SignalRName"Group"

# Create resource group 
az group create --name $myResourceGroupName --location eastus

# Create the Azure SignalR Service resource
az signalr create \
  --name $mySignalRSvcName \
  --resource-group $myResourceGroupName \
  --sku Free_F1 \
  --service-mode Default

# Scale up to Standard Tier, and scale out to 50 units
az signalr update \
  --name $mySignalRSvcName \
  --resource-group $myResourceGroupName \
  --sku Standard_S1 \
  --unit-count 50

Annotare il nome effettivo generato per il nuovo gruppo di risorse. Il nome del gruppo di risorse verrà usato quando si desidera eliminare tutte le risorse del gruppo.

Pulire la distribuzione

Dopo l'esecuzione dello script di esempio, è possibile usare il comando seguente per rimuovere il gruppo di risorse e tutte le risorse ad esso associate.

az group delete --name myResourceGroup

Confrontare i piani tariffari

Per informazioni dettagliate, ad esempio messaggi e connessioni inclusi per ogni piano tariffario, vedere Servizio SignalR Dettagli prezzi.

Per una tabella di limiti, quote e vincoli del servizio in ogni livello, vedere Servizio SignalR limiti.

Supporto avanzato per istanze Large con SKU Premium_P2

Il nuovo SKU Premium_P2 (attualmente in anteprima) è progettato per facilitare una scalabilità estesa per scenari a richiesta elevata. Questo SKU consente il ridimensionamento tra 100, 200, 300, 400, 500, 600. 700, 800, 900, 1000 unità per una singola istanza di Servizio SignalR. Questo miglioramento consente di gestire fino a un milione di connessioni simultanee, per soddisfare esigenze di comunicazione in tempo reale su larga scala.

È possibile aumentare le prestazioni dello SKU per Premium_P2 usando portale di Azure o l'interfaccia della riga di comando di Azure.

Il livello Premium_P2 usa un'architettura diversa internamente per gestire una grande quantità di risorse sottostanti. È quindi previsto che le operazioni di ridimensionamento di questo livello possano richiedere più tempo rispetto a quelle in SKU più piccoli.

Nota

Tenere presente che esiste un limite di quota predefinito che limita il numero di unità SignalR a 150 per sottoscrizione per area. Si tratta di un limite flessibile e può essere aumentato su richiesta. A tale scopo, è sufficiente inviare un ticket di supporto per richiedere una rettifica a questa quota.

Passaggi successivi

In questa guida si è appreso come ridimensionare una singola istanza di Servizio SignalR.

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

Sono supportati anche più endpoint per scenari di scalabilità, partizionamento orizzontale e tra aree.