Configure o número mínimo de instâncias (1.ª geração)
Pode evitar inícios a frio para a sua aplicação e reduzir a latência da aplicação definindo um número mínimo de instâncias.
As funções do Cloud Run são dimensionadas através da criação de novas instâncias da sua função. Cada uma destas instâncias só pode processar um pedido de cada vez, pelo que os picos elevados no volume de pedidos causam frequentemente tempos de espera mais longos à medida que são criadas novas instâncias para processar a procura.
Uma vez que as funções não têm estado, por vezes, a sua função inicializa o ambiente de execução a partir do zero, o que se denomina início a frio. Os inícios a frio podem demorar muito tempo a serem concluídos, pelo que recomendamos que defina um número mínimo de instâncias de funções do Cloud Run se a sua aplicação for sensível à latência.
Instâncias inativas e inícios a frio
Para minimizar o impacto dos inícios a frio, as funções do Cloud Run tentam manter as instâncias de funções inativas durante um período não especificado após processarem um pedido. Durante este período de inatividade, os recursos, como as ligações à base de dados abertas, podem ser mantidos caso seja necessário processar outro pedido. As instâncias mantidas inativas desta forma contam para o limite máximo de instâncias da sua função, mas não lhe é faturado este tempo de inatividade.
Este comportamento integrado pode não ser suficiente para a sua aplicação, especialmente se for sensível à latência. A definição explícita de um número mínimo de instâncias pode ajudar ainda mais a evitar inícios a frio e reduzir a latência da aplicação.
Tenha em atenção que, quando as instâncias são mantidas inativas porque foi definido um número mínimo de instâncias, estas não são consideradas ativas, a menos que tenham publicado tráfego recentemente. Por exemplo, isto significa que, se uma função não tiver publicado tráfego recentemente, a métrica "Instâncias ativas" pode mostrar que não existem instâncias ativas, mesmo que tenha sido definido um valor para instâncias mínimas.
Tenha também em atenção que, quando define um número mínimo de instâncias, é faturado pelo tempo de inatividade dessas instâncias. Consulte os preços.
Definir e limpar limites mínimos de instâncias
Pode definir um número mínimo de instâncias para uma função durante a implementação. Cada função tem a sua própria definição de instâncias mínimas.
Definir limites mínimos de instâncias
Pode definir um limite mínimo de instâncias através da CLI do Google Cloud ou da Google Cloud consola.
Consola
Para definir um limite mínimo de instâncias para uma nova função:
Para criar uma nova função, aceda à página de funções do Cloud Run na Google Cloud consola:
Aceda à página de funções do Cloud RunClique em Criar função.
Preencha os campos obrigatórios para a sua função.
Expanda a secção Tempo de execução, compilação... no final da página e clique no separador Tempo de execução.
No campo Número mínimo de instâncias na secção Ajuste automático de escala, introduza um número igual ou superior a 1.
Clicar em Seguinte.
Clique em Implementar.
Para definir um limite mínimo de instâncias para uma função existente:
Aceda à página de funções do Cloud Run na Google Cloud consola:
Aceda à página de funções do Cloud RunClique no nome de uma função existente para aceder à respetiva página de detalhes da função.
Clique em Edit.
Expanda a secção Tempo de execução, compilação... no final da página e clique no separador Tempo de execução.
No campo Número mínimo de instâncias na secção Ajuste automático de escala, introduza um número igual ou superior a 1.
Clicar em Seguinte.
Clique em Implementar.
gcloud
Para definir um limite mínimo de instâncias, execute o seguinte comando:
gcloud functions deploy FUNCTION_NAME \
--no-gen2 \
--min-instances MIN_INSTANCE_LIMIT
Substitua o seguinte:
FUNCTION_NAME: o nome da sua função.
MIN_INSTANCE_LIMIT: o número a definir como o limite mínimo de instâncias não pode exceder 1000.
O limite mínimo de instâncias da função está definido.
Limpar limites mínimos de instâncias
Pode limpar ou remover um limite mínimo de instâncias através da CLI do Google Cloud ou da Google Cloud consola.
Consola
Para limpar o limite mínimo de instâncias de uma função:
Aceda à página de funções do Cloud Run na Google Cloud consola:
aceda à página de funções do Cloud RunClique no nome de uma função existente para aceder à respetiva página de detalhes da função.
Clique em Edit.
Expanda a secção Tempo de execução, compilação... no final da página e clique no separador Tempo de execução.
No campo Número mínimo de instâncias na secção Ajuste automático de escala, introduza 0.
Clicar em Seguinte.
Clique em Implementar.
gcloud
Use a flag --clear-min-instances
no momento da implementação:
gcloud functions deploy FUNCTION_NAME --clear-min-instances
O limite mínimo de instâncias da função é eliminado.
Receber recomendações para definir instâncias mínimas
O serviço Recommender fornece automaticamente recomendações para funções implementadas que podem beneficiar da definição de instâncias mínimas.