Defina o número mínimo de instâncias de uma função com um valor maior que 0 para pré-alocar recursos elásticos. Isso ajuda a evitar a latência de requisições causada por inicializações a frio (cold starts) durante os horários de pico. Você também pode configurar políticas para dimensionar automaticamente o número mínimo de instâncias com base em uma programação ou em limiares de métricas. Isso garante alta performance e melhora a utilização das instâncias.
Ao definir o Minimum Instances com um valor maior que 0, as instâncias pré-alocadas são executadas continuamente (24 horas por dia, 7 dias por semana). A cobrança dessas instâncias ocorre mesmo que a função não receba requisições de invocação. Os períodos de processamento de requisições são faturados pelo preço unitário de instâncias elásticas (ativas), e os períodos sem requisições para processar são faturados pelo preço unitário de instâncias elásticas (em light sleep, anteriormente ociosas). A regra de gasto mínimo por hora também pode ser aplicada. Para mais informações sobre o cálculo das taxas, consulte {{XREF_0}}.
Você só pode configurar políticas elásticas para o número mínimo de instâncias em um alias de função ou na versão LATEST.
Defina o número mínimo de instâncias
Acesse o Function Compute console. No painel de navegação à esquerda, escolha .
Na barra de navegação superior, selecione uma região. Na página Functions, clique em Create Function.
Na página Create Function, na seção Scaling Policy, defina o Minimum Instances, configure os outros parâmetros necessários e, em seguida, clique em Create.
Configure políticas elásticas
Na página de detalhes da função de destino, clique na aba Scaling Policy. Na seção Elastic policy, localize a política desejada e clique em Modify na coluna Actions.
-
No painel Edit elastic policy, configure uma política elástica dinâmica para o número mínimo de instâncias.
NotaSe você configurar várias políticas elásticas, o sistema calcula o Minimum Instances para cada política acionada. Em seguida, o sistema usa o valor máximo entre o Minimum Instances de todas as políticas ativas no momento como o número mínimo de instâncias atual. Para mais informações, consulte {{XREF_1}}.
Enquanto uma política elástica estiver ativa, a configuração inicial de Minimum Instances é ignorada. Se nenhuma política elástica estiver ativa, o número mínimo de instâncias atual retorna ao valor inicial que você definiu para Minimum Instances.
-
Configure uma política de Scheduled Scaling ou Water-level Scaling
Dimensionamento programado
Uma política de dimensionamento programado é adequada para funções com padrões periódicos claros ou picos de tráfego previsíveis. Quando o número de invocações simultâneas da função excede o número mínimo de instâncias, as requisições excedentes são processadas automaticamente por instâncias elásticas sob demanda. Para mais informações, consulte {{XREF_2}}.
Este exemplo define o Time zone como Asia/Shanghai (UTC+8). A política é de longo prazo e escala horizontalmente o número mínimo de instâncias para 50 às 10:00 de segunda a sexta-feira, e reduz para 5 às 22:00.
Dimensionamento baseado em limiares
O sistema coleta periodicamente métricas como Provisioned concurrency utilization, Memory utilization ou métricas de utilização de recursos para instâncias GPU. Quando uma condição especificada é atendida, o sistema dimensiona o Minimum Instances de acordo. Para mais informações, consulte {{XREF_3}}.
Defina o Minimum Number of Instances como
1. Em seguida, na seção Minimum Number of Instances Dynamic Policy, selecione a aba Threshold-based Scaling para configurar a política.Este exemplo define o Time zone como Asia/Shanghai (UTC+8). A política fica ativa das 00:00 de 15 de julho de 2025 até as 00:00 de 31 de julho de 2025. Ela rastreia a métrica Provisioned concurrency utilization com um valor alvo de 60%. Quando a utilização excede 60%, o sistema escala horizontalmente para um máximo de 100 instâncias. Quando a utilização cai abaixo de 60%, ele reduz para um mínimo de 10 instâncias.
Para funções CPU, o dimensionamento baseado em limiares monitora métricas como Provisioned concurrency utilization e Memory utilization. Para funções GPU, a política oferece suporte ao monitoramento de Provisioned concurrency utilization e outras métricas de utilização de recursos relacionados à GPU, conforme detalhado na tabela a seguir.
Funções CPU
Funções GPU
Na configuração de threshold-based scaling, a lista suspensa Utilization Type oferece suporte a dois tipos de utilização: instance concurrency utilization e memory utilization. A aba Trigger Method também inclui scheduled scaling.
Na configuração de dimensionamento baseado em limiares de uma função GPU, o Utilization Type oferece suporte a cinco opções: instance concurrency utilization, GPU SM utilization, GPU memory utilization, GPU hardware encoder utilization e GPU hardware decoder utilization.
-
Configure o dimensionamento periódico usando uma CRON Expression
Se a sua aplicação tiver padrões de tráfego previsíveis, você também pode usar uma expressão CRON para dimensionar periodicamente o número mínimo de instâncias. Por exemplo, você pode definir o Time zone como Asia/Shanghai (UTC+8) para escalar horizontalmente o número mínimo de instâncias para 10 às 10:00 toda segunda-feira e reduzir para 1 às 22:00 toda sexta-feira.
Modifique ou exclua uma política elástica para o número mínimo de instâncias
Acesse o Function Compute console. No painel de navegação à esquerda, escolha . Na página Elastic policy, localize a política que deseja gerenciar. Na coluna Actions, clique em Modify ou Delete para modificar ou excluir a política elástica para o número mínimo de instâncias.
Excluir uma política elástica para o número mínimo de instâncias de um alias libera todas as instâncias pré-alocadas para esse alias. A função então muda automaticamente para o dimensionamento sob demanda, o que pode envolver uma inicialização a frio (cold start). Para services baseados em CPU, o tempo médio de inicialização a frio é tipicamente de centenas de milissegundos, dependendo da velocidade de inicialização da aplicação. Para services baseados em GPU, o tempo médio de inicialização a frio pode ser de vários minutos, dependendo do tamanho do modelo e da velocidade de carregamento.
FAQ
Como verificar se uma função tem o número mínimo de instâncias configurado e visualizar os registros históricos de configuração?
Verifique a configuração atual
Acesse o Function Compute console. No painel de navegação à esquerda, escolha Elastic Management > Elastic policy. Na lista Elastic policy, localize a função de destino e verifique a coluna Minimum Instances:
Se o Minimum Instances mostrar um valor específico maior que 0, a função possui uma política elástica para o número mínimo de instâncias. As instâncias são executadas continuamente e geram cobrança.
Se a coluna Minimum Instances mostrar - ou um valor de 0, a função não tem um número mínimo de instâncias configurado. A função dimensiona sob demanda e não há cobranças extras por instâncias reservadas.
Verifique a configuração histórica
No painel de navegação à esquerda do Function Compute console, escolha Monitoring and Alerting > Monitoring. No painel de monitoramento, visualize o gráfico da métrica Minimum Instances. Ajuste o intervalo de tempo da consulta (por exemplo, altere de 2 semanas para 1 semana) para corresponder ao ciclo de faturamento e confirmar se o número mínimo de instâncias foi configurado para a função durante um período específico.
Você também pode visualizar o gráfico da métrica Minimum Instances no nível da função na página de monitoramento da função de destino para conhecer as alterações históricas de configuração de uma única função.
Referências
Para limitar o número de instâncias de uma função específica, você pode {{XREF_4}}. Se o número total de instâncias em execução para a função exceder o limite configurado, o Function Compute retorna um erro de limitação de taxa (throttling error).