ProGlove escala para 1 milhão de Lambdas com isolamento por conta AWS

Fabricante de wearables industriais usa modelo one-account-per-tenant, CloudFormation StackSets e políticas scale-to-zero para operar milhares de contas com custo ocioso inferior a US$ 1 por mês.

R

Arquitetura multi-tenant ProGlove AWS Lambda Step Functions EventBridge
Arquitetura multi-tenant ProGlove AWS Lambda Step Functions EventBridge

A AWS detalhou como a ProGlove, fabricante alemã de wearables industriais, alcançou a marca de mais de 1 milhão de funções AWS Lambda distribuídas por milhares de contas AWS dedicadas — uma por cliente. O caso, publicado no AWS Architecture Blog, revela como decisões arquiteturais radicais de isolamento, combinadas com automação pesada e gestão agressiva de custos de observabilidade, permitiram escalar uma plataforma SaaS B2B sem estourar orçamento nem quotas de serviço.

Contexto: por que isolar cada cliente em uma conta AWS dedicada

A ProGlove adotou o modelo one-account-per-tenant (uma conta por inquilino) desde o início. A troca: sobrecarga operacional inicial por fronteiras de segurança rígidas, quotas de serviço independentes e atribuição de custos transparente por cliente.

Benefícios tangíveis do isolamento rígido

  • Segurança: falha ou comprometimento em uma conta não vaza dados de outros tenants.
  • Quotas independentes: limites de concorrência Lambda, DynamoDB ou EventBridge não são compartilhados.
  • FinOps nativo: a fatura AWS de cada conta reflete exatamente o consumo daquele cliente.
  • Conformidade: facilita aderência a LGPD, GDPR e contratos enterprise que exigem segregação física/lógica.

O modelo funcionou bem até ~50 contas. A partir daí, provisionamento manual travou releases e estourou quotas de serviço (limites de StackSets, Organizations, CloudFormation). A resposta foi automação de ponta a ponta.

Arquitetura técnica: Step Functions, EventBridge e DynamoDB por conta

Dentro de cada conta de cliente, a ProGlove roda 5 a 15 funções Lambda orquestradas por AWS Step Functions. O fluxo padrão:

  1. Leitores de scanner enviam dados via API Gateway / IoT Core.
  2. Step Functions coordena ingestão, validação, enriquecimento e persistência.
  3. Dados brutos e processados vão para Amazon DynamoDB (tabelas por tenant).
  4. Eventos de negócio são emitidos para um Amazon EventBridge bus compartilhado (cross-account) consumido pelo plano de analytics central da ProGlove.

Código de exemplo: definição de estado Step Functions (resumido)

{
  "Comment": "Pipeline de ingestão ProGlove per-tenant",
  "StartAt": "ValidarLeitura",
  "States": {
    "ValidarLeitura": {
      "Type": "Task",
      "Resource": "arn:aws:lambda:region:account-id:function:ValidateReading",
      "Next": "PersistirDynamoDB"
    },
    "PersistirDynamoDB": {
      "Type": "Task",
      "Resource": "arn:aws:lambda:region:account-id:function:PersistToDynamoDB",
      "Next": "EmitirEventoNegocio"
    },
    "EmitirEventoNegocio": {
      "Type": "Task",
      "Resource": "arn:aws:events:region:account-id:rule/AnalyticsBusPutEvents",
      "End": true
    }
  }
}

Esse padrão garante que a lógica de negócio rode isolada, enquanto o barramento de eventos centralizado permite analytics agregado sem quebrar o isolamento de dados.

Automação em escala: Organizations + StackSets + Step Functions

Para eliminar provisionamento manual, a equipe construiu um pipeline único que cria e atualiza todas as contas:

  • AWS Organizations: gestão hierárquica de contas, SCPs (Service Control Policies) e billing consolidado.
  • CloudFormation StackSets: implantação de stacks idênticas (IAM, Lambda, Step Functions, DynamoDB, EventBridge rules) em milhares de contas alvo.
  • Step Functions (nível master): orquestra o fluxo de onboarding — cria conta, aguarda prontidão, dispara StackSet, valida saúde, registra no catálogo interno.

Gargalo de throughput do StackSets e a colaboração com AWS

StackSets padrão não sustentava a taxa de deploy necessária para milhares de contas. A ProGlove trabalhou diretamente com engenheiros de serviço da AWS para aumentar o throughput do StackSets (otimizações internas de concorrência, throttling e retries). Resultado: o mecanismo passou a "ventilar" mudanças por milhares de contas que juntas hospedam o milhão de Lambdas.

Compromisso aceito: rollouts via StackSets permanecem mais lentos que deploy CloudFormation em conta única. A equipe considerou o trade-off aceitável dado o ganho em isolamento, visibilidade de custo e consistência operacional.

Gargalos operacionais: quotas, "thundering herd" e custos de observabilidade

Auto-DDoS via cron jobs sincronizados

Agendadores cron disparavam a mesma função em todas as contas no mesmo segundo, gerando picos de concorrência que pareciam ataque DDoS autoinfligido. A solução não usou Reserved Concurrency nem Provisioned Concurrency (custo alto). Em vez disso:

  • Jittered execution windows: janelas de execução aleatórias (ex: 0-15 min) por conta.
  • Triggers event-driven: migração de agendamento fixo para eventos S3, SQS ou EventBridge nativos.

Resultado: carga regional suavizada sem capacidade provisionada ociosa.

Explosão de logs e métricas: a conta da observabilidade

Cada Lambda emite logs (CloudWatch Logs) e métricas (CloudWatch Metrics). Multiplicado por milhares de contas e 1 milhão de funções, o volume ameaçou dominar a fatura. Medidas adotadas:

Problema Solução Impacto
Logs verbosos em todas as invocações Níveis de log dinâmicos (DEBUG só sob demanda); sampling em produção Redução de 80%+ no volume de logs ingeridos
Métricas padrão por função (invocations, errors, duration, throttles) Consolidação de métricas de alta cardinalidade; uso de Embedded Metric Format (EMF) para agregação client-side Queda drástica em custom metrics cobradas
Filas SQS mortas/ociosas por conta Remoção automatizada de queues não usadas via Lambda janitor + StackSets Eliminação de custos fixos de filas paradas
Falhas dispersas difíceis de correlacionar Dead-Letter Queue (DLQ) centralizada cross-account para falhas de alta prioridade Visibilidade unificada de erros críticos; redução de retenção de logs por conta

Arraste para o lado para ver toda a tabela.

Segundo o blog da AWS, essas mudanças reduziram o custo ocioso por conta para menos de US$ 1/mês.

Lições do mercado: Capital One, DoorDash e o padrão de automação disciplinada

A experiência da ProGlove não é isolada. Dois casos públicos reforçam o mesmo padrão:

Empresa Escala Lição central
Capital One Milhares de workloads Lambda enterprise Padronização de deployment, observabilidade e governança é pré-requisito para operar Lambda em larga escala.

Arraste para o lado para ver toda a tabela.

Fonte: Infoq — https://www.infoq.com/news/2026/07/aws-lambda-1m/

Tags

R

Sobre o autor

Editor-chefe

Usuário técnico criado para escrever conteúdos da redação.

Ver perfil

Perguntas frequentes

O que é o modelo one-account-per-tenant na AWS? +

É uma arquitetura multi-tenant onde cada cliente (tenant) roda em uma conta AWS completamente separada, garantindo isolamento total de recursos, quotas, segurança e faturamento.

Como a ProGlove resolveu o problema de 'thundering herd' nos crons? +

Substituiu agendadores cron rígidos por janelas de execução com jitter (aleatoriedade) e migrou para gatilhos orientados a eventos (S3, SQS, EventBridge), distribuindo a carga no tempo sem usar concorrência provisionada.

Qual o custo ocioso por conta alcançado pela ProGlove? +

Menos de US$ 1 por mês por conta, após otimizações de logs, métricas, remoção de filas SQS ociosas e centralização de falhas em DLQ cross-account.

Vale a pena usar CloudFormation StackSets para milhares de contas? +

Sim, mas exige tuning. A ProGlove precisou colaborar com engenheiros da AWS para aumentar o throughput do StackSets. O trade-off: deploy mais lento que single-account, mas ganha consistência e governança.

Como isolar custos de observabilidade em arquitetura multi-conta? +

Use sampling de logs, Embedded Metric Format (EMF) para agregação client-side, remova recursos ociosos (filas, log groups) com automação e centralize apenas sinais de alta prioridade (DLQ cross-account).

Mais em Tecnologia

Newsletter

Receba os destaques no seu e-mail

Cadastre-se e acompanhe as novidades em primeira mão.