Dimensionar automaticamente unidades de um Serviço Azure SignalR

Importante

O dimensionamento automático só está disponível na camada do Azure SignalR Service Premium.

A camada do Azure SignalR Service Premium dá suporte a um recurso de dimensionamento automático, que é uma implementação do dimensionamento automático do Azure Monitor. O dimensionamento automático permite dimensionar automaticamente a contagem de unidades do seu Serviço SignalR para corresponder à carga real no serviço. O dimensionamento automático pode ajudá-lo a otimizar o desempenho e o custo do seu aplicativo.

O Azure SignalR adiciona suas próprias métricas de serviço. No entanto, a maior parte da interface do usuário é compartilhada e comum a outros serviços do Azure que oferecem suporte ao dimensionamento automático. Se você é novo no assunto do Azure Monitor Metrics, revise a agregação e a exibição do Azure Monitor Metrics antes de se aprofundar nas Métricas de Serviço do SignalR.

Noções básicas sobre o dimensionamento automático no serviço SignalR

O dimensionamento automático permite definir condições que alterarão dinamicamente as unidades alocadas ao Serviço SignalR enquanto o serviço estiver em execução. As condições de dimensionamento automático são baseadas em métricas, como a Carga do Servidor. O dimensionamento automático também pode ser configurado para ser executado em uma programação, como todos os dias entre determinadas horas.

Por exemplo, você pode implementar os seguintes cenários de dimensionamento usando o dimensionamento automático.

  • Aumente as unidades quando a Utilização da Quota de Ligação estiver acima de 70%.
  • Diminua as unidades quando a carga do servidor estiver abaixo de 20%.
  • Crie uma programação para adicionar mais unidades durante o horário de pico e reduzir unidades fora do horário de expediente.

Vários fatores afetam o desempenho do Serviço SignalR. Nenhuma métrica fornece uma visão completa do desempenho do sistema. Por exemplo, se você estiver enviando um grande número de mensagens, talvez seja necessário expandir mesmo que a cota de conexão seja relativamente baixa. A combinação de Utilização da Cota de Conexão e Carga do Servidor fornece uma indicação da carga geral do sistema. Aplicam-se as seguintes diretrizes.

  • Dimensione se a contagem de conexões for superior a 80-90%. O dimensionamento antes que a contagem de conexões se esgote garante que você terá buffer suficiente para aceitar novas conexões antes que a expansão entre em vigor.
  • Dimensione se a carga do servidor for superior a 80-90%. O dimensionamento antecipado garante que o serviço tenha capacidade suficiente para manter o desempenho durante a operação de expansão.

A operação de dimensionamento automático geralmente entra em vigor 3-5 minutos depois de ser acionada. É importante não mudar as unidades com muita frequência. Uma boa regra prática é permitir 30 minutos a partir da escala automática anterior antes de executar outra operação de escala automática. Em alguns casos, talvez seja necessário experimentar para encontrar o intervalo de escala automática ideal.

Configurações personalizadas de dimensionamento automático

Abra a página de configurações de dimensionamento automático:

  1. Aceda ao portal do Azure.

  2. Abra a página do serviço SignalR .

  3. No menu à esquerda, em Configurações, escolha Dimensionamento.

  4. Selecione a guia Configurar . Se você tiver uma instância SignalR de nível Premium, verá duas opções para Escolha como dimensionar seu recurso:

    • Balança manual, que permite alterar manualmente o número de unidades.
    • Dimensionamento automático personalizado, que permite criar condições de dimensionamento automático com base em métricas e/ou um cronograma.
  5. Escolha Dimensionamento automático personalizado. Use esta página para gerenciar as condições de dimensionamento automático para seu serviço Azure SignalR.

Condição de escala padrão

Ao abrir configurações personalizadas de dimensionamento automático pela primeira vez, você verá a condição de escala padrão já criada para você. Esta condição de escala é executada quando nenhuma das outras condições de escala corresponde aos critérios definidos para elas. Não é possível excluir a condição Padrão, mas é possível renomeá-la, alterar as regras e a ação executada pelo dimensionamento automático.

Não é possível definir a condição padrão para dimensionamento automático em dias ou intervalos de datas específicos. A condição padrão suporta apenas o dimensionamento para um intervalo de unidades. Para dimensionar de acordo com uma programação, você precisará adicionar uma nova condição de escala.

O dimensionamento automático não terá efeito até que você salve a condição padrão pela primeira vez depois de selecionar Dimensionamento automático personalizado.

Adicionar ou alterar uma condição de escala

Há duas opções de como dimensionar seu recurso do Azure SignalR:

  • Escala baseada em uma métrica - Escala dentro de limites unitários com base em uma métrica dinâmica. Uma ou mais regras de escala são definidas para definir os critérios usados para avaliar a métrica.
  • Dimensionar para unidades específicas - Dimensionar para um número específico de unidades com base em um intervalo de datas ou agenda recorrente.

Dimensionamento com base na métrica

O procedimento a seguir mostra como adicionar uma condição para aumentar as unidades (dimensionamento) quando a Utilização da Cota de Conexão for maior que 70% e diminuir as unidades (escalar) quando a Utilização da Cota de Conexão for inferior a 20%. Os incrementos ou decréscimos são feitos entre as unidades disponíveis.

  1. Na página Dimensionamento, selecione Dimensionamento automático personalizado para a opção Escolher como dimensionar seu recurso.

  2. Selecione Dimensionar com base em uma métrica para o modo Escala.

  3. Selecione + Adicionar uma regra. Screenshot of custom rule based on a metric.

  4. Na página Regra de escala , siga estas etapas:

    1. Selecione uma métrica na lista suspensa Nome da métrica . Neste exemplo, é Utilização da Cota de Conexão.
    2. Selecione um operador e valores limite. Neste exemplo, eles são Maior que e 70 para o limite Métrico para acionar a ação de escala.
    3. Selecione uma operação na seção Ação . Neste exemplo, está definido como Aumentar.
    4. Em seguida, selecione AdicionarScreenshot of default autoscale rule screen.
  5. Selecione + Adicionar uma regra novamente e siga estas etapas na página Regra de escala:

    1. Selecione uma métrica na lista suspensa Nome da métrica . Neste exemplo, é Utilização da Cota de Conexão.
    2. Selecione um operador e valores limite. Neste exemplo, eles são Menor que e 20 para o limite de métrica para disparar a ação de escala.
    3. Selecione uma operação na seção Ação . Neste exemplo, está definido como Diminuir.
    4. Em seguida, selecione AdicionarScreenshot Connection Quota Utilization scale rule.
  6. Defina o número mínimo, máximo e padrão de unidades.

  7. Selecione Salvar na barra de ferramentas para salvar a configuração de dimensionamento automático.

Dimensionar para unidades específicas

Siga estas etapas para configurar a regra para ser dimensionada para um intervalo de unidades específico.

  1. Na página Dimensionamento, selecione Dimensionamento automático personalizado para a opção Escolher como dimensionar seu recurso.
  2. Selecione Dimensionar para uma unidade específica para o modo Escala.
  3. Em Unidades, selecione o número de unidades padrão. Screenshot of scale rule criteria.

Adicionar mais condições

A seção anterior mostrou como adicionar uma condição padrão para a configuração de dimensionamento automático. Esta seção mostra como adicionar mais condições à configuração de dimensionamento automático.

  1. Na página Dimensionamento, selecione Dimensionamento automático personalizado para a opção Escolher como dimensionar seu recurso.
  2. Selecione Adicionar uma condição de escala no bloco Padrão . Screenshot of custom scale rule screen.
  3. Confirme se a opção Dimensionar com base em uma métrica está selecionada.
  4. Selecione + Adicionar uma regra para adicionar uma regra para aumentar as unidades quando a Utilização da Quota de Ligação ultrapassar os 70%. Siga as etapas da seção de condição padrão.
  5. Defina o número mínimo , máximo e padrão de unidades.
  6. Você também pode definir uma agenda em uma condição personalizada (mas não na condição padrão). Você pode especificar datas de início e término para a condição (ou) selecionar dias específicos (segunda-feira, terça-feira e assim por diante.) de uma semana.
    1. Se você selecionar Especificar datas de início/término, selecione o Fuso horário, Data e hora de início e Data e hora de término (conforme mostrado na imagem a seguir) para que a condição esteja em vigor.
    2. Se você selecionar Repetir dias específicos, selecione os dias da semana, fuso horário, hora de início e hora de término em que a condição deve ser aplicada.

Próximos passos

Para obter mais informações sobre como gerenciar o dimensionamento automático a partir da CLI do Azure, consulte az monitor autoscale.