Como dimensionar uma instância do Serviço Azure SignalR?

Este artigo mostra como dimensionar sua instância do Serviço Azure SignalR. Há dois cenários para escalar, aumentar e reduzir.

  • Aumentar a escala: obtenha mais unidades, conexões, mensagens e muito mais. Você aumenta a escala alterando o nível de preço de Gratuito para Padrão.
  • Dimensionamento: aumente o número de unidades SignalR. Você pode expandir para até 100 unidades. Há opções de unidade limitadas para selecionar para o dimensionamento: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20, 30, 40, 50, 60, 70, 80, 90 e 100 unidades para uma única instância do Serviço SignalR. Se você quiser escalar além de 100 unidades, o Premium_P2 SKU oferece recursos expandidos.

As configurações de escala levam alguns minutos para serem aplicadas. Em casos raros, a aplicação pode demorar cerca de 30 minutos. O dimensionamento não exige que você altere seu código ou reimplante seu aplicativo de servidor.

Para obter informações sobre os preços e as capacidades de cada Serviço SignalR, consulte Detalhes de preços do Serviço SignalR do Azure.

Nota

Mudando o serviço SignalR do nível gratuito para o nível Standard ou Premium ou vice-versa, o IP do serviço público será alterado e geralmente leva de 30 a 60 minutos para propagar a alteração para servidores DNS em toda a Internet. Seu serviço pode estar inacessível antes que o DNS seja atualizado. Geralmente, não é recomendado alterar seu nível de preço com muita frequência.

Aumentar a escala no portal do Azure

  1. No browser, abra o portal do Azure.

  2. Na página Serviço SignalR, no menu à esquerda, selecione Aumentar escala.

  3. Clique em Alterar e selecione Camada padrão na folha pop-out.

    Screenshot of scaling up on Portal.

  4. Selecione Guardar.

Expandir no portal do Azure

  1. No browser, abra o portal do Azure.

  2. Na página Serviço SignalR, no menu à esquerda, selecione Dimensionamento.

  3. Escolha a unidade no setor de balança manual.

    Screenshot of scaling out on Portal.

  4. Selecione Guardar.

Dimensionar usando a CLI do Azure

Esse script cria um novo recurso do Serviço SignalR de Nível Livre e um novo grupo de recursos e o dimensiona para a Camada Padrão.

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

Anote o nome real gerado para o novo grupo de recursos. Você usará esse nome de grupo de recursos quando quiser excluir todos os recursos do grupo.

Limpar a implementação

Depois de executar o script de exemplo, pode ser utilizado o seguinte comando para remover o grupo de recursos e todos os recursos associados ao mesmo.

az group delete --name myResourceGroup

Comparar níveis de preços

Para obter informações detalhadas, como mensagens e conexões incluídas para cada nível de preço, consulte Detalhes de preços do serviço SignalR.

Para obter uma tabela de limites de serviço, cotas e restrições em cada camada, consulte Limites de serviço do SignalR.

Suporte aprimorado a instâncias grandes com Premium_P2 SKU

O novo Premium_P2 SKU (atualmente em visualização) foi projetado para facilitar a escalabilidade extensiva para cenários de alta demanda. Este SKU permite escalar entre 100, 200, 300, 400, 500, 600. 700, 800, 900, 1000 unidades para uma única instância do Serviço SignalR. Esse aprimoramento permite o tratamento de até um milhão de conexões simultâneas, atendendo às necessidades de comunicação em grande escala e em tempo real.

Você pode dimensionar a SKU para Premium_P2 usando o portal do Azure ou a CLI do Azure.

A camada Premium_P2 usa uma arquitetura diferente internamente para gerenciar uma grande quantidade de recursos subjacentes. Assim, espera-se que as operações de escalonamento dessa camada possam levar mais tempo em comparação com aquelas em SKUs menores.

Nota

Esteja ciente de que há um limite de cota padrão limitando o número de unidades SignalR em 150 por assinatura por região. Este é um limite suave e pode ser aumentado mediante solicitação. Para isso, basta enviar um ticket de suporte para solicitar um ajuste nessa cota.

Próximos passos

Neste guia, você aprendeu sobre como dimensionar uma única instância do Serviço SignalR.

O dimensionamento automático é suportado no Azure SignalR Service Premium Tier.

Vários pontos de extremidade também são suportados para cenários de dimensionamento, fragmentação e entre regiões.