O Azure Web App oferece uma poderosa funcionalidade de escalabilidade para garantir que as aplicações possam lidar com mudanças de carga de trabalho de forma eficiente. Essa escalabilidade pode ser configurada de forma manual, automática ou baseada em regras. Este artigo explica como funciona cada tipo de escalabilidade, tanto no aspecto horizontal quanto vertical.
1. Escalabilidade Vertical (Vertical Scaling)
A escalabilidade vertical consiste em aumentar ou diminuir os recursos de uma única instância do Web App, como CPU, memória ou capacidade de IOPS.
1.1 Como funciona
Você altera o Plano de Serviço do App (App Service Plan) para uma SKU superior ou inferior, com base nas necessidades do aplicativo. Isso permite melhorar o desempenho sem alterar o número de instâncias.
1.2 Configuração Manual
Acesse o portal do Azure.
Navegue até o recurso do Web App.
No menu lateral, selecione App Service Plan.
Clique em Change Pricing Tier.
Escolha um plano superior (ou inferior) e confirme.
1.3 Considerações
Alterar o plano de serviço pode causar uma breve interrupção.
É ideal para cargas previsíveis e quando a aplicação precisa de maior capacidade em uma única instância.
2. Escalabilidade Horizontal (Horizontal Scaling)
A escalabilidade horizontal, ou scaling out/in, envolve aumentar ou diminuir o número de instâncias que estão executando o Web App.
2.1 Como funciona
Adiciona ou remove instâncias de forma que a carga seja distribuída entre elas. Isso é útil para lidar com picos de tráfego ou cargas variáveis.
2.2 Configuração Manual
Acesse o portal do Azure.
Navegue até o recurso do Web App.
No menu lateral, selecione Scale Out (App Service Plan).
Ajuste o número de instâncias manualmente.
Salve as alterações.
2.3 Configuração Automática (Autoscale)
O Azure oferece a opção de escalar horizontalmente automaticamente com base em métricas ou horários específicos.
Passos para Configuração de Autoscale
No portal do Azure, navegue até o recurso App Service Plan.
Clique em Scale Out (App Service Plan).
Selecione Custom Autoscale.
Defina a regra de escalabilidade:
Métricas baseadas em CPU, memória ou latência.
Agendamento baseado em horários específicos, como horários de pico.
Configure os limites mínimos, máximos e padrão de instâncias.
Salve as configurações.
2.4 Baseada em Regras (Rule-based Autoscale)
Permite criar regras personalizadas para escalar instâncias com base em condições específicas, como:
A CPU atingir mais de 70% por mais de 5 minutos.
Aumentar instâncias durante o horário comercial e reduzir durante a noite.
Exemplo de Regra Baseada em CPU
Condição: Se o uso da CPU > 70% por 5 minutos.
Ação: Adicionar 1 instância (até o máximo configurado).
Configuração:
Acesse Scale Out (App Service Plan).
Clique em Add a rule.
Configure as métricas e ações desejadas.
Salve as regras.
Horizontal Manual - Para cenários onde o número de instâncias é ajustado com base em planejamento ou em eventos programados.
Horizontal Automático - Quando há variações imprevisíveis de carga e você deseja escalabilidade dinâmica baseada em métricas ou horários.
Baseada em Regras - Para cenários específicos, como alta utilização de CPU ou picos regulares de tráfego, que podem ser tratados com condições personalizadas.
Comentários
Postar um comentário