Você pode ativar o recurso de slow start para grupos de servidores no Application Load Balancer (ALB). Esse recurso aumenta gradualmente as requisições enviadas aos servidores de backend recém-adicionados, evitando sobrecarga por picos repentinos de tráfego e permitindo tempo suficiente para o aquecimento (warm-up).
Casos de uso
Em cenários de alto tráfego, ao adicionar servidores de backend manual ou automaticamente, o ALB começa a rotear requisições conforme os pesos configurados assim que eles passam nas verificações de integridade. Isso pode gerar um pico repentino de tráfego capaz de sobrecarregar os novos servidores, causar alto uso de CPU ou memória e resultar em diversos erros de acesso.
Para evitar essa situação, ative o slow start no grupo de servidores. Assim, o ALB roteia o tráfego para os novos servidores de backend de maneira progressiva e previne sobrecargas inesperadas.
Este tópico utiliza o seguinte cenário: uma instância ALB voltada para a internet implantada na região China (Hangzhou). A instância possui um listener HTTP e um servidor de backend, o ECS01. Para suportar mais tráfego, adiciona-se um segundo servidor, o ECS02. Ao ativar o slow start, as requisições são direcionadas gradualmente ao ECS02, impedindo sua sobrecarga.
Observações de uso
Servidores de backend íntegros existentes em um grupo não entram automaticamente no modo slow start. O primeiro servidor adicionado a um grupo vazio também não entra nesse modo. Um novo servidor só inicia o slow start quando adicionado a um grupo que já contenha pelo menos um servidor de backend íntegro fora do modo slow start.
Se você remover um servidor de backend durante o slow start, ele sairá desse modo. Caso adicione o mesmo servidor novamente, ele reiniciará o slow start após passar na verificação de integridade.
Se a verificação de integridade falhar enquanto o servidor estiver em slow start, ele sairá desse modo. O retorno ao slow start ocorre somente após o status da verificação de integridade voltar ao normal.
Com as verificações de integridade ativadas, o slow start entra em vigor depois que o servidor passa na verificação. Quando as verificações estão desativadas, o slow start tem efeito imediato.
Pré-requisitos
Crie uma instância ALB padrão e um grupo de servidores. Para mais informações, consulte Criar e gerenciar uma instância ALB e Criar e gerenciar um grupo de servidores.
Configure um listener para a instância ALB e associe-o ao grupo de servidores. Para mais detalhes, consulte Adicionar um listener HTTP.
Crie um log de acesso para a instância ALB. Consulte Criar um log de acesso para obter instruções.
-
Este tópico utiliza duas instâncias ECS:
O ECS01 e o ECS02 funcionam como servidores de backend, cada um executando um serviço Nginx diferente. Para mais informações, consulte Criar uma instância usando o assistente.
Os exemplos abaixo mostram como implantar as aplicações de teste no ECS01 e no ECS02:
-
Adicione a instância ECS01 ao grupo de servidores e garanta que o serviço esteja acessível aos clientes. Para mais informações, consulte Implementar rapidamente o balanceamento de carga para serviços IPv4 usando uma instância ALB e Implementar rapidamente o balanceamento de carga para serviços IPv6 usando uma instância ALB.
Etapa 1: Ativar o slow start
Esta etapa demonstra como ativar o slow start em um grupo de servidores existente. Você também pode ativar esse recurso durante a criação do grupo.
Faça login no console do ALB.
Na barra de navegação superior, selecione a região onde os servidores de backend estão implantados. Este tópico utiliza China (Hangzhou).
No painel de navegação à esquerda, escolha .
Na página Server Groups, localize o grupo de servidores desejado e clique em seu ID.
Na aba Details, na seção Basic Information, clique em Modify Basic Information.
Na caixa de diálogo Modify Basic Information, clique em Advanced Settings e ative a chave Slow Start.
-
Defina Slow Start Duration como 30 segundos e clique em Save.
NotaIsso significa que o ALB aumentará o tráfego para o novo servidor de backend ao longo de 30 segundos.
Etapa 2: Simular tráfego de cliente com wrk
Este tópico usa como exemplo um cliente executando a versão de 64 bits do Alibaba Cloud Linux 3.2104. As etapas de instalação da ferramenta wrk podem variar conforme o sistema operacional.
-
Faça login no cliente e abra a interface de linha de comando. Execute os comandos abaixo em sequência para instalar a ferramenta wrk.
yum -y install git make gcc git clone https://github.com/wg/wrk.git yum install unzip cd wrk make -
Execute o comando a seguir para testar a carga nos serviços dos servidores de backend do ALB.
./wrk -c 1000 -d 6000s -t 3 -H “Connection:Close” http://<ALB-domain-name>Parâmetros:
-c: conexões. Quantidade de conexões simultâneas mantidas por thread.
-d: duração. Tempo total do teste.
sindica segundos.-t: threads. Número de threads utilizadas para simular usuários concorrentes.
-H: cabeçalho. Cabeçalho HTTP adicionado a cada requisição. Por exemplo,
-H “Connection:Close”insira um cabeçalho indicando conexão não persistente.
Etapa 3: Adicionar o servidor de backend ECS02
Certifique-se de adicionar o servidor de backend ao grupo antes que o teste de carga termine.
Faça login no console do ALB.
Na barra de navegação superior, selecione a região onde a instância ALB está implantada.
No painel de navegação à esquerda, escolha .
Na página Server Groups, localize o grupo de servidores alvo e clique em Modify Backend Server na coluna Actions.
Na aba Backend Servers, clique em Add Backend Server.
No painel Add Backend Server, selecione a instância ECS02 e clique em Next.
No assistente Ports/Weights, defina a porta da instância ECS02 como 80, mantenha o peso padrão de 100 e clique em OK.
Etapa 4: Verificar o resultado
Faça login no console do ALB.
Na barra de navegação superior, selecione a região onde a instância ALB está implantada.
Na página Instances, clique no ID da instância desejada.
-
Clique na aba Access Logs. Na seção Basic Information, clique no link ao lado de Simple Log Service para abrir o console do Log Service (SLS). A figura abaixo ilustra como visualizar o tráfego no novo servidor de backend, ECS02.
O log de acesso mostra que o tráfego é distribuído gradualmente para o novo servidor de backend ECS02 durante o período de slow start.

No.
Description
①
Insira a consulta a seguir para visualizar o tráfego roteado para o novo servidor de backend, ECS02.
alb-80ri6****** and upstream_addr : "10.0.2.51:80"Os campos são descritos da seguinte forma:
-
alb-80ri6especifica o ID da instância ALB. -
upstream_addrespecifica o endereço IP e a porta do servidor de backend. Neste exemplo, insira o endereço IP privado e a porta do ECS02.
②
Selecione um intervalo de tempo para a consulta. Neste exemplo,
1 Minuteestá selecionado.③
Clique em Search & Analyze para visualizar o tráfego no novo servidor de backend, ECS02.
-
Documentos relacionados
Para ativar o slow start durante a criação de um grupo de servidores, consulte Criar e gerenciar um grupo de servidores.
Para remover um servidor de backend de serviço de forma segura, ative o connection draining. Para mais informações, consulte Configurar connection draining.
Para consultar e analisar logs de acesso em tempo real, consulte Início rápido para consulta e análise.