Pular para o conteúdo principal

Serverless Deployment

Descrição​

O serviço é implantado em uma infraestrutura que esconde qualquer conceito de servidor, seja físico, virtual ou contêiner. Você envia o código empacotado (por exemplo, um arquivo ZIP), descreve as características de desempenho desejadas e a plataforma executa o serviço, cobrando por requisição conforme os recursos consumidos.

Internamente o provedor usa contêineres ou VMs, mas isso não é gerenciado pelo usuário. As funções são sem estado e acionadas por eventos, requisições HTTP via gateway, chamadas explícitas à API da plataforma ou agendamentos. Exemplos: AWS Lambda, Google Cloud Functions e Azure Functions.

Problemas que resolve​

  • Esforço de gerenciar servidores, sistema operacional e escala.
  • Pagamento por capacidade ociosa ou subutilizada.
  • Elasticidade automática diante de variações de carga.
  • Implantação rápida, sem provisionamento de infraestrutura.

Quando usar​

  • Cargas sem estado, orientadas a eventos ou requisições.
  • Cargas intermitentes ou com picos imprevisíveis.
  • Quando se quer reduzir ao mínimo a operação de infraestrutura.

Quando evitar​

  • Serviços de longa duração ou com estado, como bancos de dados e brokers de mensagens.
  • Serviços que assinam filas de um broker como RabbitMQ.
  • Aplicações com inicialização lenta ou sensíveis a latência por causa de cold start.

Trade-offs​

GanhoCusto / Risco
Sem gerenciamento de infraestrutura de baixo nívelRestrições significativas, como poucas linguagens suportadas
Alta elasticidade com escala automáticaAdequado apenas a serviços sem estado orientados a requisições
Pagamento por requisição, sem ociosoFontes de entrada limitadas
Implantação simplesCold start e picos súbitos podem causar alta latência
  • Há risco de dependência do provedor (lock-in).
  • Depuração e observabilidade distribuídas exigem ferramentas específicas.

Diagrama​

A plataforma cria e escala instâncias da função sob demanda, a partir de requisições e eventos.

Padrões relacionados​

Referência​