Hur skalar du en Azure SignalR Service-instans?

Den här artikeln visar hur du skalar instansen av Azure SignalR Service. Det finns två scenarier för skalning, uppskalning och utskalning.

  • Skala upp: Hämta fler enheter, anslutningar, meddelanden med mera. Du kan skala upp genom att ändra prisnivån från Kostnadsfri till Standard.
  • Skala ut: Öka antalet SignalR-enheter. Du kan skala ut till så många som 100 enheter. Det finns begränsade enhetsalternativ att välja för skalning: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20, 30, 40, 50, 60, 70, 80, 90 och 100 enheter för en enda SignalR Service-instans. Om du vill skala över 100 enheter erbjuder Premium_P2 SKU utökade funktioner.

Skalningsinställningarna tar några minuter att tillämpa. I sällsynta fall kan det ta cirka 30 minuter att applicera. Skalning kräver inte att du ändrar din kod eller distribuerar om serverprogrammet.

Information om priser och kapaciteter för enskilda SignalR Service finns i Prisinformation för Azure SignalR Service.

Kommentar

Om du ändrar SignalR Service från den kostnadsfria nivån till Standard - eller Premium-nivån eller vice versa ändras den offentliga tjänstens IP-adress och det tar vanligtvis 30–60 minuter att sprida ändringen till DNS-servrar över hela Internet. Tjänsten kan vara oåtkomlig innan DNS uppdateras. I allmänhet rekommenderas det inte att ändra prisnivån för ofta.

Skala upp på Azure-portalen

  1. Öppna Azure-portalen i webbläsaren.

  2. På sidan SignalR Service går du till den vänstra menyn och väljer Skala upp.

  3. Klicka på Ändra och välj Standardnivå på popup-bladet.

    Screenshot of scaling up on Portal.

  4. Välj Spara.

Skala ut på Azure-portalen

  1. Öppna Azure-portalen i webbläsaren.

  2. På sidan SignalR Service går du till den vänstra menyn och väljer Skala ut.

  3. Välj enheten i sektorn Manuell skalning .

    Screenshot of scaling out on Portal.

  4. Välj Spara.

Skala med Hjälp av Azure CLI

Det här skriptet skapar en ny SignalR Service-resurs på den kostnadsfria nivån och en ny resursgrupp och skalar upp den till standardnivå .

#!/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

Anteckna det faktiska namnet som genereras för den nya resursgruppen. Du använder resursgruppens namn när du vill ta bort alla gruppresurser.

Rensa distribution

När exempelskriptet har körts kan följande kommando användas för att ta bort resursgruppen och alla resurser som är kopplade till den.

az group delete --name myResourceGroup

Jämföra prisnivåer

Detaljerad information, till exempel inkluderade meddelanden och anslutningar för varje prisnivå, finns i Prisinformation för SignalR Service.

En tabell med tjänstgränser, kvoter och begränsningar på varje nivå finns i SignalR Service-gränser.

Utökat stöd för stora instanser med Premium_P2 SKU

Den nya Premium_P2 SKU (för närvarande i förhandsversion) är utformad för att underlätta omfattande skalbarhet för scenarier med hög efterfrågan. Den här SKU:n tillåter skalning mellan 100, 200, 300, 400, 500, 600. 700, 800, 900, 1 000 enheter för en enda SignalR Service-instans. Den här förbättringen möjliggör hantering av upp till en miljon samtidiga anslutningar som tillgodoser storskaliga kommunikationsbehov i realtid.

Du kan skala upp SKU:n för att Premium_P2 med hjälp av Azure-portalen eller Azure CLI.

Nivån Premium_P2 använder en annan arkitektur internt för att hantera en stor mängd underliggande resurser. Därför förväntas skalningsåtgärderna på den här nivån ta längre tid jämfört med dem i mindre SKU:er.

Kommentar

Tänk på att det finns en standardkvotgräns som begränsar antalet SignalR-enheter till 150 per prenumeration per region. Detta är en mjuk gräns och kan ökas vid begäran. För att göra det skickar du bara ett supportärende för att begära en justering av den här kvoten.

Nästa steg

I den här guiden har du lärt dig hur du skalar en enskild SignalR Service-instans.

Autoskalning stöds på Azure SignalR Service Premium-nivån.

Flera slutpunkter stöds också för skalning, horisontell partitionering och scenarier mellan regioner.