Identificar cenários adequados para dimensionamento automático

Concluído

O dimensionamento automático pode ser acionado de acordo com um cronograma ou avaliando dinamicamente se o sistema está com falta de recursos. Por exemplo, o dimensionamento automático pode ser acionado se a utilização da CPU crescer, a ocupação da memória aumentar, houver um pico de pedidos recebidos para um serviço ou devido a uma combinação de fatores.

Num sistema de reservas de hotel, o dimensionamento automático é útil para lidar com alterações de curto prazo no número de pedidos de reserva. Você também pode usar o dimensionamento automático agendado para fornecer mais recursos em horários de pico previsíveis.

O que é o dimensionamento automático?

O dimensionamento automático é um sistema ou processo em nuvem que ajusta os recursos disponíveis com base na demanda atual. O dimensionamento automático consiste em reduzir e aumentar horizontalmente, em vez de reduzir e aumentar verticalmente.

Dimensionamento automático do Serviço de Aplicativo do Azure

O dimensionamento automático no Serviço de Aplicativo do Azure monitora as métricas de recursos de um aplicativo Web à medida que o aplicativo Web é executado. O Serviço de Aplicativo deteta quando mais recursos são necessários para lidar com uma carga de trabalho crescente e garante que esses recursos estejam disponíveis antes que o sistema fique sobrecarregado.

O dimensionamento automático responde a alterações no ambiente adicionando ou removendo servidores Web e equilibrando a carga entre eles. O dimensionamento automático não afeta a potência da CPU, a memória ou a capacidade de armazenamento dos servidores Web que alimentam o aplicativo Web, apenas altera o número de servidores Web.

Regras de dimensionamento automático

O dimensionamento automático toma decisões com base nas regras que definir. Uma regra especifica o limiar de uma métrica e aciona um evento de dimensionamento automático quando este limiar for ultrapassado. O dimensionamento automático também pode desalocar recursos quando a carga de trabalho diminui.

Defina as suas regras de dimensionamento automático com atenção. Por exemplo, um ataque de negação de serviço (DoS) provavelmente resultará em um influxo em grande escala de tráfego de entrada. Tentar processar um aumento nos pedidos provocado por um ataque denial of service seria inútil e dispendioso. Essas solicitações não são genuínas e devem ser descartadas em vez de processadas. Uma melhor solução é implementar a deteção e filtragem dos pedidos que ocorrem durante esse tipo de ataque antes que o mesmo atinja o seu serviço.

Em que momento deve ponderar utilizar o dimensionamento automático?

O dimensionamento automático fornece elasticidade para seus serviços Web. É uma solução adequada ao hospedar qualquer aplicativo para o qual você não pode prever facilmente a carga de trabalho, ou para o qual a carga de trabalho provavelmente variará significativamente por data ou hora do dia. Por exemplo, você pode esperar um aumento ou redução da atividade de um aplicativo de negócios durante as férias.

O dimensionamento automático melhora a disponibilidade e a tolerância a falhas. Ele pode ajudar a garantir que as solicitações do cliente para um serviço Web não sejam negadas porque uma instância não consegue reconhecer solicitações em tempo hábil ou porque uma instância sobrecarregada falha.

O dimensionamento automático funciona através da adição ou remoção de servidores Web. Se seus aplicativos Web executarem processamento intensivo de recursos como parte de cada solicitação, o dimensionamento automático pode ser uma abordagem ineficaz. Nessas situações, o dimensionamento manual pode ser necessário. Por exemplo, se um pedido enviado para uma aplicação Web envolver o processamento complexo de um grande conjunto de dados, consoante o tamanho da instância, este único pedido poderia esgotar a capacidade de processamento e memória da instância.

O dimensionamento automático não é a melhor abordagem para lidar com o crescimento a longo prazo. Você pode ter um aplicativo Web que começa com alguns usuários, mas se torna mais popular com o tempo. O dimensionamento automático tem um custo associado à monitorização de recursos e a determinar se deve acionar um evento de dimensionamento. Nesse cenário, se você puder antecipar a taxa de crescimento, dimensionar manualmente o sistema ao longo do tempo pode ser mais econômico.

O número de instâncias de um serviço Web também é um fator ao considerar o dimensionamento automático. Na maioria das vezes, é expectável que consiga executar apenas algumas instâncias de um serviço. No entanto, nesta situação, o seu serviço estará sempre suscetível a algum tempo de inatividade ou falta de disponibilidade quer o dimensionamento automático esteja ou não ativado. Quanto menor o número de instâncias inicialmente, menos capacidade você tem para lidar com uma carga de trabalho crescente enquanto o dimensionamento automático gera mais instâncias.