As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Configurar a simultaneidade reservada
No Lambda, simultaneidade corresponde ao número de solicitações em andamento que a função está processando, no momento. Há dois tipos de controle de simultaneidade disponíveis:
-
Simultaneidade reservada: representa o número máximo de instâncias simultâneas alocadas para a função. Quando uma função tem simultaneidade reservada, nenhuma outra função pode usar essa simultaneidade. Configurar a simultaneidade reservada para uma função não acarreta cobranças adicionais.
-
Simultaneidade provisionada: é o número de ambientes de execução inicializados previamente alocados para a função. Esses ambientes de execução estão prontos para responder imediatamente às solicitações de função de entrada. A configuração da simultaneidade provisionada gera cobranças na sua Conta da AWS.
Este tópico detalha como gerenciar e configurar a simultaneidade reservada. Para uma visão geral conceitual desses dois tipos de controles de simultaneidade, consulte Simultaneidade reservada e simultaneidade provisionada. Para obter informações, sobre a configuração da simultaneidade provisionada, consulte Configurar a simultaneidade provisionada.
nota
As funções do Lambda vinculadas a um mapeamento da origem do evento do Amazon MQ têm uma simultaneidade máxima padrão. Para o Apache Active MQ, o número máximo de instâncias simultâneas é 5. Para o Rabbit MQ, o número máximo de instâncias simultâneas é 1. Definir a simultaneidade reservada ou provisionada para a função não altera esses limites. Para solicitar um aumento na simultaneidade máxima padrão ao usar o Amazon MQ, entre em contato com AWS Support.
Configurar a simultaneidade reservada
Você pode definir configurações de simultaneidade reservada para uma função usando o console do Lambda ou a API do Lambda.
Para reservar simultaneidade para uma função (console)
Abra a página Funções
do console do Lambda. -
Escolha a função para a qual você deseja reservar a simultaneidade.
-
Escolha Configuration (Configuração) e escolha (Concurrency (Simultaneidade).
-
Em Concurrency (Simultaneidade), selecione Edit (Editar).
-
Selecione Reserve concurrency (Reservar simultaneidade). Insira a quantidade de simultaneidade para reservar para a função.
-
Escolha Salvar.
Você pode reservar até o valor da simultaneidade da conta não reservada menos 100. As 100 unidades restantes de simultaneidade se destinam a funções que não estão usando simultaneidade reservada. Por exemplo, se sua conta tiver um limite de simultaneidade de 1 mil, você não poderá reservar todas as 1 mil unidades de simultaneidade para uma única função.
Reservar simultaneidade para uma função afeta o grupo de simultaneidades disponíveis para outras funções. Por exemplo, se você reservar 100 unidades de simultaneidade para function-a
, outras funções da sua conta deverão compartilhar as 900 unidades restantes de simultaneidade, mesmo que function-a
não use todas as 100 unidades de simultaneidade reservadas.
Para controlar intencionalmente a utilização de uma função, defina a simultaneidade reservada como zero. Isso impede que sua função processe todos os eventos até que você remova o limite.
Para configurar a simultaneidade reservada com a API do Lambda, use as operações da API a seguir.
Por exemplo, para configurar a simultaneidade reservada com a AWS Command Line Interface (CLI), use o comando put-function-concurrency
. O comando a seguir reserva 100 unidades de simultaneidade para uma função denominada my-function
:
aws lambda put-function-concurrency --function-name my-function \ --reserved-concurrent-executions 100
Você observará um resultado parecido com o seguinte:
{ "ReservedConcurrentExecutions": 100 }
Configurar a simultaneidade com a API do Lambda
Se sua função está atualmente veiculando tráfego, você pode visualizar facilmente suas métricas de simultaneidade usando CloudWatch métricas. Especificamente, a métrica ConcurrentExecutions
apresenta o número de invocações simultâneas para cada função em sua conta.
O gráfico anterior sugere que essa função atende a uma média de cinco a dez solicitações simultâneas e atinge o pico de 20 solicitações em um dia típico. Suponha que existam muitas outras funções na sua conta. Se essa função for essencial para sua aplicação e você não desejar descartar solicitação alguma, use um número maior ou igual a 20 como sua definição de simultaneidade reservada.
Com alternativa, lembre-se de que você também pode calcular a simultaneidade usando a fórmula a seguir:
Concurrency = (average requests per second) * (average request duration in seconds)
Multiplicar a média de solicitações por segundo pela duração média da solicitação em segundos fornece uma estimativa aproximada do quanto de simultaneidade você precisa reservar. É possível estimar a média de solicitações por segundo usando a métrica Invocation
e a duração média da solicitação em segundos usando a métrica Duration
. Consulte Trabalhar com métricas de funções Lambda para obter mais detalhes.