Configurare il numero minimo di istanze (1ª gen.)
Puoi evitare gli avvii a freddo dell'applicazione e ridurne la latenza impostando un numero minimo di istanze.
Le funzioni Cloud Run si ridimensionano creando nuove istanze della funzione. Ognuna di queste istanze può gestire una sola richiesta alla volta, per cui i picchi nel volume delle richieste spesso causano tempi di attesa più lunghi quando vengono create nuove istanze a gestire la domanda.
Poiché le funzioni sono stateless, a volte la funzione inizializza l'ambiente di esecuzione da zero, il che viene chiamato avvio a freddo. Il completamento degli avvii a freddo può richiedere molto tempo, pertanto ti consigliamo di impostare un numero minimo di istanze di funzioni Cloud Run se la tua applicazione è sensibile alla latenza.
Istanze inattive e avvii a freddo
Per ridurre al minimo l'impatto avvii a freddo, Le funzioni Cloud Run tentano di mantenere le istanze di funzione inattive per un di tempo necessario per la gestione di una richiesta. Durante questo tempo di inattività, risorse come poiché è possibile mantenere le connessioni di database aperte nel caso in cui un'altra richiesta necessitasse di da gestire. Le istanze lasciate inattive in questo modo vengono conteggiate ai fini del limite di istanze massime per la funzione, ma non ti viene addebitato alcun costo per questo tempo di inattività.
Questo comportamento integrato potrebbe non essere sufficiente per la tua applicazione, soprattutto se è sensibile alla latenza. Impostazione esplicita di un numero minimo di può aiutarti ulteriormente a evitare avvii a freddo e a ridurre la latenza dell'applicazione.
Tieni presente che quando le istanze vengono mantenute inattive perché è stato impostato un numero minimo di istanze, queste non sono considerate attive a meno che non abbiano gestito traffico di recente. Ad esempio, ciò significa che se di recente una funzione non ha fornito traffico, la metrica "Istanze attive" potrebbe indicare che non sono attive istanze, anche se è stato impostato un valore per le istanze minime.
Tieni inoltre presente che quando imposti un numero minimo di istanze, ti viene addebitato il costo il tempo di inattività di queste istanze (vedi Prezzi).
Impostazione e eliminazione dei limiti minimi di istanze
Puoi impostare un numero minimo di istanze per una funzione durante il deployment. Ogni funzione ha la propria impostazione di istanze minime.
Impostazione di limiti minimi per le istanze
Puoi impostare un limite di istanze minime utilizzando Google Cloud CLI o la console Google Cloud.
Console
Per impostare un limite minimo di istanze per una nuova funzione:
Per creare una nuova funzione, vai alla pagina delle funzioni di Cloud Run nella Console Google Cloud:
Vai alla pagina delle funzioni di Cloud RunFai clic su Crea funzione.
Compila i campi obbligatori per la funzione.
Espandi la sezione Runtime, build… alla fine della pagina e fai clic sulla scheda Runtime.
Nel campo Numero minimo di istanze in Scalabilità automatica. inserisci un numero maggiore o uguale a 1.
Fai clic su Avanti.
Fai clic su Esegui il deployment.
Per impostare un limite minimo di istanza per una funzione esistente:
Vai alla pagina delle funzioni di Cloud Run nella console Google Cloud:
Vai alla pagina delle funzioni di Cloud RunFai clic sul nome di una funzione esistente per visualizzarne la Pagina Dettagli della funzione.
Fai clic su Modifica.
Espandi la sezione Runtime, build... alla fine della pagina e fai clic su la scheda Runtime.
Nel campo Numero minimo di istanze in Scalabilità automatica. inserisci un numero maggiore o uguale a 1.
Fai clic su Avanti.
Fai clic su Esegui il deployment.
gcloud
Per impostare un limite minimo di istanze, esegui il seguente comando:
gcloud functions deploy FUNCTION_NAME \
--no-gen2 \
--min-instances MIN_INSTANCE_LIMIT
Sostituisci quanto segue:
FUNCTION_NAME: il nome della funzione.
MIN_INSTANCE_LIMIT: il numero da impostare come limite minimo di istanze non può superare 1000.
Il limite minimo di istanze della funzione è impostato.
Annullamento dei limiti minimi di istanze
Puoi cancellare o rimuovere un limite di istanze minime utilizzando Google Cloud CLI o la console Google Cloud.
Console
Per cancellare il limite minimo di istanza di una funzione:
Vai alla pagina delle funzioni di Cloud Run nella Console Google Cloud:
Vai alla pagina delle funzioni di Cloud RunFai clic sul nome di una funzione esistente per visualizzarne la Pagina Dettagli della funzione.
Fai clic su Modifica.
Espandi la sezione Runtime, build… alla fine della pagina e fai clic sulla scheda Runtime.
Nel campo Numero minimo di istanze in Scalabilità automatica. inserisci 0.
Fai clic su Avanti.
Fai clic su Esegui il deployment.
gcloud
Usa il flag --clear-min-instances
al momento del deployment:
gcloud functions deploy FUNCTION_NAME --clear-min-instances
Il limite minimo di istanza della funzione è stato cancellato.
Recupero dei suggerimenti per impostare il numero minimo di istanze
Il servizio motore per suggerimenti automaticamente fornisce suggerimenti per le funzioni di cui è stato eseguito il deployment che potrebbero trarre vantaggio con un numero minimo di istanze impostato.