AWS Lambda
Guia do desenvolvedor

Dimensionamento de funções do AWS Lambda

Na primeira vez que você invoca a função, o AWS Lambda cria uma instância da função e executa seu método de handler para processar o evento. Quando a função retorna uma resposta, ela permanece para processar eventos adicionais. Se você invocar a função novamente enquanto o primeiro evento estiver sendo processado, o Lambda criará outra instância.

À medida que mais eventos são adicionados, o Lambda os direciona para instâncias disponíveis e cria novas instâncias conforme necessário. A simultaneidade da função é o número de instâncias que atendem as solicitações em um determinado momento. Para uma intermitência inicial de tráfego, a simultaneidade da função pode atingir um nível inicial de entre 500 e 3000, que varia por região.

Limites de intermitência de simultaneidade inicial

  • 3000 – Oeste dos EUA (Oregon), Leste dos EUA (Norte da Virgínia), UE (Irlanda).

  • 1000 – Ásia-Pacífico (Tóquio), UE (Frankfurt).

  • 500 – Outras regiões.

Após a intermitência inicial, a simultaneidade da função pode ser dimensionada por mais 500 instâncias a cada minuto. Isso continua até que o número de instâncias seja suficiente para atender a todas as solicitações ou um limite de simultaneidade seja atingido. Quando o número de solicitações diminui, o Lambda interrompe instâncias não utilizadas para liberar capacidade de dimensionamento para outras funções.

O limite de simultaneidade regional começa em 1,000 e pode ser aumentado, enviando uma solicitação no console do Support Center. Para limitar a escalabilidade e alocar capacidade por função, você pode configurar funções com simultaneidade reservada.

Quando as solicitações chegam mais rápido do que sua função pode escalar, ou quando sua função é a simultaneidade máxima, solicitações adicionais falham com um erro de limitação (código de status 429). Quando você invocar a função diretamente, deverá tratá-la como um erro de nova tentativa.

Quando você invoca a função de forma assíncrona, com um mapeamento da origem do evento, ou com outro serviço da AWS, o comportamento de dimensionamento varia. Por exemplo, os mapeamentos de origem do evento que leem de um stream não são dimensionados além do número de fragmentos no stream. O dimensionamento de capacidade não usada por uma origem de evento está disponível para uso por outros clientes e origens de evento. Para obter mais informações, consulte os tópicos a seguir.

Você pode monitorar os níveis de simultaneidade em sua conta com as métricas ConcurrentExecutions e UnreservedConcurrentExecutions. Para mais informações, consulte Métricas do AWS Lambda.