A adição do escalonamento horizontal automático à plataforma de hospedagem de aplicativos da Kinsta significa que agora é mais fácil fornecer exatamente a potência de que seu aplicativo precisa para atender às demandas variáveis dos recursos do servidor.
O escalonamento horizontal — adicionando ou removendo instâncias de pods que executam o processo web do seu aplicativo — agora pode ser configurado para ser acionado automaticamente com base no uso da CPU. Isso pode ajudar seu aplicativo a se preparar para lidar com cargas pesadas ou a reduzir tanto em potência quanto em custo quando a demanda é menor.
Giuseppe Silletti, líder técnico de uma equipe de desenvolvedores de hospedagem de aplicativos e hospedagem de banco de dados da Kinsta, diz que a variabilidade na demanda de recursos do servidor é comum para aplicativos web.
“Imagine que uma plataforma de eCommerce sofra um aumento repentino no tráfego devido a uma venda relâmpago”, explica Silletti. “Milhares de usuários estão acessando o site simultaneamente para procurar produtos, adicionar itens aos carrinhos e fazer o checkout. O fluxo repentino de tráfego aumenta a utilização da CPU e da memória do servidor web. A utilização do CPU atinge um pico de 85%, bem acima dos níveis normais. O número atual de instâncias do servidor web é insuficiente para lidar com esse aumento de carga, resultando em atrasos nos tempos de resposta e possíveis timeouts.”
“O escalonamento horizontal torna-se essencial aqui”, diz ele. “Ao monitorar métricas como a utilização do CPU, instâncias adicionais do servidor web são ativadas para distribuir a carga de tráfego de entrada, garantindo que a experiência do usuário permaneça perfeita e responsiva.”
Habilitando o escalonamento horizontal automático
Ao configurar seus aplicativos na plataforma Kinsta, você pode especificar os requisitos de CPU e memória dos pods do Kubernetes para os processos de serviço da web, background worker e Cron jobs. Você também pode escolher manualmente quantas instâncias de cada pod são necessárias.
Ao especificar recursos para um serviço web, você pode usar o novo escalonamento automático que permite você definir um número mínimo e máximo de pods (de 1 a 10) para o processo.
“Aumentar o tamanho do pod – escalonamento vertical – significa aumentar o CPU, a memória e outros recursos alocados para cada pod existente”, diz Silletti. “É uma maneira rápida de melhorar o desempenho, mas tem limitações devido aos recursos máximos disponíveis no node.”
“Aumentar o número de pods – escalonamento horizontal – envolve a implantação de instâncias adicionais do pod em todo o cluster”, diz ele. “É uma abordagem mais flexível para gerenciar o aumento da carga e não é limitada pela capacidade do node individual.”
Como funciona o escalonamento automático na Kinsta
Com o escalonamento automático ativado, a demanda nos pods do serviço da web é monitorada para ver se as cargas estão abaixo ou acima de 80% da capacidade.
“Quando o uso da CPU excede o limite definido, o escalonamento automático do Kubernetes aciona a criação de pods adicionais para equilibrar a carga”, diz Silletti. “O balanceador de carga do serviço identifica automaticamente esses novos pods e distribui o tráfego de entrada entre todos os pods disponíveis.”
“Quando o Kubernetes identifica que a utilização de recursos está abaixo do limite definido, ele inicia o processo de remoção de pods. Ele garante que, mesmo após a remoção de um pod, os pods restantes possam lidar eficientemente com a carga de tráfego, mantendo-se abaixo do limite.”
Mesmo com o escalonamento automático ativado, os usuários podem precisar de ajuda para determinar quais valores selecionar para essas instâncias mínimas e máximas de pod. O conselho de Silletti?
“Inicialmente, defina uma linha de base para o uso de recursos do seu aplicativo em condições de carga normal e de pico”, diz ele. “Em seguida, utilize ferramentas e métricas para monitorar o desempenho do aplicativo e a utilização de recursos. Reavalie e ajuste as configurações conforme necessário para garantir o desempenho ideal.”
Comece a escalonar automaticamente seu aplicativo hoje mesmo
Você tem uma ideia para um aplicativo que poderia se beneficiar do escalonamento automático dos recursos do pod? Veja como você pode começar a trabalhar rapidamente com a plataforma de hospedagem de aplicativos da Kinsta:
- Navegue em nossa crescente biblioteca de exemplos de início rápido para ver como implantar suas tecnologias favoritas de provedores Git como GitHub, GitLab e Bitbucket.
- Examine nossa documentação oficial sobre escalonamento de aplicativos.
- Crie sua conta MyKinsta e comece a construir sem riscos!
Quando você implantar, seu código e seus serviços de armazenamento persistente serão executados na infraestrutura de primeira linha do Google Cloud Platform, suportados pelas máquinas virtuais C2 da plataforma.
Isso é um lar para o seu aplicativo com espaço para crescer.