A elasticidade rápida é a capacidade da cloud de disponibilizar e libertar capacidade depressa, muitas vezes de forma automática, para que os recursos aumentem e diminuam com a procura. O NIST inclui-a nas cinco características essenciais da computação em cloud. Para o utilizador, a capacidade disponível parece ilimitada e pode ser obtida em qualquer quantidade e a qualquer momento, sendo depois devolvida.
Pontos principais
- A NIST SP 800-145 define-a como capacidades que "podem ser disponibilizadas e libertadas de forma elástica, em alguns casos automaticamente, para escalar rapidamente para fora e para dentro em função da procura".
- Contam as duas direções. Libertar capacidade quando a procura desce é o que transforma a elasticidade em poupança.
- Na prática, é concretizada pelo auto scaling: métricas, políticas de escalonamento, limites mínimo e máximo e um balanceador de carga.
- A elasticidade é de curto prazo e automática; a escalabilidade é a capacidade de crescer a longo prazo. Uma carga de trabalho na cloud precisa de ambas.
- Só funciona se a aplicação for concebida para isso: servidores sem estado, armazenamento de sessões externo e uma base de dados que acompanhe o ritmo.
A definição do NIST, palavra a palavra
O Instituto Nacional de Normas e Tecnologia dos EUA (NIST) escreveu a definição que a maioria dos manuais e exames de certificação utiliza. Na NIST Special Publication 800-145, The NIST Definition of Cloud Computing, lê-se (tradução a nossa):
"As capacidades podem ser disponibilizadas e libertadas de forma elástica, em alguns casos automaticamente, para escalar rapidamente para fora e para dentro em função da procura. Para o consumidor, as capacidades disponíveis para aprovisionamento parecem, muitas vezes, ilimitadas e podem ser obtidas em qualquer quantidade e a qualquer momento."
As outras quatro características essenciais são o autosserviço a pedido, o acesso alargado pela rede, o agrupamento de recursos e o serviço medido. Cada expressão da definição tem um significado prático:
- "Disponibilizadas e libertadas": a capacidade volta para trás, tal como aumenta. Um sistema que só cresce é escalável, não elástico.
- "Em alguns casos automaticamente": a automatização é comum, mas não obrigatória. Uma pessoa que clica em "adicionar cinco servidores" e os obtém em minutos continua a enquadrar-se na definição.
- "Para fora e para dentro": a definição descreve o escalonamento horizontal, adicionar e remover instâncias, e não redimensionar uma única máquina.
- "Em função da procura": a capacidade deve acompanhar a carga real, não uma previsão feita há meses.
- "Parecem ilimitadas": o conjunto de recursos do fornecedor é tão grande que um único cliente raramente chega ao limite, embora as quotas da conta continuem a aplicar-se.
Como funciona na prática?
Os fornecedores de cloud concretizam a elasticidade através de serviços de auto scaling. O AWS Auto Scaling, por exemplo, "monitoriza as suas aplicações e ajusta automaticamente a capacidade para manter um desempenho estável e previsível ao menor custo possível". O Azure e o Google Cloud oferecem serviços equivalentes para grupos de máquinas virtuais, contentores e bases de dados.
Uma configuração típica tem cinco partes:
- Métricas, como a utilização de CPU, os pedidos por destino ou o comprimento da fila, recolhidas a cada minuto ou com maior frequência.
- Políticas que indicam quando agir: manter o CPU perto de 50%, adicionar duas instâncias quando a fila ultrapassa um limiar ou adicionar capacidade todos os dias úteis às 08:00.
- Limites: um mínimo para manter a disponibilidade e um máximo para limitar o custo.
- Aprovisionamento a partir de um modelo ou de uma imagem, para que as novas instâncias sejam idênticas e arranquem depressa.
- Um balanceador de carga que envia tráfego para as novas instâncias depois de passarem as verificações de estado e as esvazia antes da remoção.
O Azure Well-Architected Framework da Microsoft refere a consequência para o desenho: escalar horizontalmente máquinas virtuais "exige um balanceador de carga separado, o tratamento dos pedidos dos clientes e estado armazenado externamente". A elasticidade é tanto uma propriedade do desenho da aplicação como uma funcionalidade da plataforma.
Elasticidade rápida vs escalabilidade
A escalabilidade é saber se um sistema consegue lidar com mais carga quando lhe são dados mais recursos. A elasticidade é saber se obtém e liberta esses recursos de forma rápida e automática à medida que a carga muda.
| Escalabilidade | Elasticidade | |
|---|---|---|
| Horizonte temporal | Crescimento a longo prazo | De minutos a horas |
| Direção | Sobretudo para cima | Para fora e de volta para dentro |
| Gatilho típico | Crescimento do negócio, novos mercados | Picos de tráfego, padrões diários e sazonais |
| Principal vantagem | Crescer sem redesenhar | Desempenho no pico, custo mais baixo fora dele |
Para uma visão empresarial das opções, incluindo grupos de auto scaling de VM, contentores e serverless, leia o nosso guia sobre escalabilidade elástica na computação em cloud.
Exemplos
- Campanhas de vendas no retalho. Uma loja online escala para fora os níveis web e de checkout para uma campanha de Black Friday e volta ao normal na semana seguinte.
- Negócios sazonais. Os sites de reservas e de webcams de uma estância de esqui concentram a maior parte do tráfego em poucos meses de inverno.
- Lançamentos de media. Um serviço de streaming ou de notícias acrescenta capacidade quando um lançamento popular ou uma notícia de última hora provoca um pico.
- Análise em lote. Uma equipa financeira executa os relatórios de fim de mês em centenas de núcleos durante uma hora, em vez de alguns servidores durante dias.
- Desenvolvimento e testes. Os ambientes de teste arrancam para um teste de carga ou um pull request e são eliminados depois.
O caso sazonal é real para a cliente da Opsio Branäsgruppen, um dos maiores grupos de estâncias de esqui da Suécia, com até 15 000 esquiadores por dia no pico. O o seu ambiente VMware no local tinha de ser escalado manualmente antes de cada pico de procura, e o desempenho caía até isso ser feito. Depois da migração para a AWS, o caso de sucesso da Branäsgruppen descreve camadas de front-end web, middleware e base de dados que agora se expandem e contraem automaticamente com a procura sazonal.
Vantagens e limites
As vantagens são diretas: paga a capacidade de pico apenas durante o pico, os utilizadores têm tempos de resposta consistentes e ninguém tem de adicionar servidores manualmente antes de uma campanha.
Os limites são igualmente práticos:
- Tempo de arranque. As novas máquinas virtuais demoram a arrancar e a aquecer. Picos muito abruptos exigem margem, capacidade pré-aquecida ou serverless.
- A camada de dados. Os servidores web escalam facilmente; as bases de dados relacionais não. Planeie réplicas de leitura, cache ou uma base de dados gerida que escale.
- Quotas. Os limites da conta para instâncias ou concorrência podem impedir o escalonamento. Aumente-os antes de picos conhecidos.
- Surpresas de custo. Um erro ou tráfego de bots pode fazê-lo escalar rapidamente. Defina sempre um máximo e alertas de orçamento.
- Licenciamento. O software licenciado por servidor ou por núcleo pode não permitir instâncias de curta duração.
A a sua carga de trabalho tem elasticidade? Uma verificação rápida
- Qualquer servidor pode ser terminado sem que os utilizadores percam a sessão ou os dados?
- Existe uma política de escalonamento com limites mínimo e máximo testados?
- A capacidade desce mesmo depois de um pico? Veja o gráfico do número de instâncias do mês passado.
- A base de dados foi testada com carga no tráfego de pico, e não apenas a camada web?
- As quotas de serviço são suficientes para o maior pico esperado?
Se várias respostas forem "não", a carga de trabalho está alojada na cloud, mas ainda não é elástica. As equipas de serviço gerido AWS e de consultoria cloud da Opsio analisam e corrigem estas lacunas no âmbito do trabalho de arquitetura.
Perguntas frequentes
O que é a elasticidade rápida na computação em cloud?
É uma das cinco características essenciais da computação em cloud definidas pelo NIST: a capacidade pode ser disponibilizada e libertada depressa, por vezes de forma automática, para escalar para fora e para dentro com a procura, e para o utilizador parece ilimitada.
Qual é um exemplo de elasticidade rápida?
Uma loja online que tem quatro servidores web num dia normal, escala automaticamente para vinte durante uma campanha de vendas e volta a quatro quando a campanha termina. Só paga pelos dezasseis servidores adicionais enquanto estão a funcionar.
Qual é a diferença entre elasticidade e escalabilidade?
A escalabilidade é a capacidade de lidar com mais carga acrescentando recursos, normalmente a longo prazo. A elasticidade é acrescentar e remover esses recursos depressa, muitas vezes de forma automática, à medida que a procura sobe e desce.
A elasticidade rápida é o mesmo que auto scaling?
Não exatamente. A elasticidade é a característica; o auto scaling é a forma mais comum de a concretizar. A definição do NIST diz que o aprovisionamento ocorre "em alguns casos automaticamente", pelo que o escalonamento manual rápido também conta, mas na prática as equipas de cloud automatizam-no.
Porque é importante a elasticidade na computação em cloud?
Porque elimina a escolha entre pagar por capacidade paragem e ficar sem capacidade no pico. Dimensiona para a procura de hoje, escala para fora quando ela sobe e escala de volta para dentro quando desce.
Leitura relacionada
Escrito por

Diretor de Inovação
Jacob lidera a inovação na Opsio, especializando-se em transformação digital, IA, IoT e soluções impulsionadas pela cloud que convertem tecnologia complexa em valor empresarial mensurável. Com quase 15 anos de experiência, trabalha em estreita colaboração com os clientes para conceber soluções escaláveis de IA e IoT, otimizar processos de entrega e criar estratégias tecnológicas que impulsionam um crescimento sustentável e um impacto empresarial a longo prazo.
Normas editoriais: Este artigo foi escrito pelo profissional cloud indicado acima. Atualizamo-lo quando a tecnologia ou a regulamentação que aborda muda; as datas desta página indicam a última atualização. A Opsio mantém independência editorial.