Località Cloud Functions (1ª generazione.)

Cloud Functions è regionale, il che significa che l'infrastruttura che esegue un'istanza La Cloud Function si trova in una regione specifica ed è gestita affinché Google sia disponibile in modo ridondante tutte le zone all'interno di quella regione.

Quando selezioni una regione in cui eseguire le tue funzioni Cloud Functions, in termini di latenza e disponibilità. Puoi generalmente seleziona la regione più vicina agli utenti della Cloud Function, ma devi anche considerare la posizione altri prodotti e servizi Google Cloud usati dalla tua app. L'utilizzo dei servizi in più località può influire la latenza e i prezzi dell'app.

Le regioni disponibili per Cloud Functions sono elencate di seguito. Le diverse di Cloud Functions hanno una disponibilità regionale diversa; consulta la sezione "Versioni dei prodotti supportate" colonna nelle tabelle.

Prezzi del livello 1

Cloud Functions è disponibile nelle seguenti regioni con Prezzi di livello 1:

Regione Località Emissioni di CO2
asia-east1 Taiwan
asia-east2 Hong Kong
asia-northeast1 Tokyo
asia-northeast2 Osaka
europe-west1 Belgio icona foglia A basse emissioni di CO2
europe-west2 Londra
us-central1 Iowa icona foglia A basse emissioni di CO2
us-east1 Carolina del Sud
us-east4 Virginia del Nord
us-west1 Oregon icona foglia A basse emissioni di CO2

Prezzi del livello 2

Cloud Functions è disponibile nelle seguenti regioni con Prezzi di livello 2:

Regione Località Emissioni di CO2
asia-northeast3 Seul
asia-southeast1 Singapore
asia-southeast2 Giacarta
asia-south1 Mumbai
australia-southeast1 Sydney
europe-central2 Varsavia
europe-west3 Francoforte icona foglia A basse emissioni di CO2
europe-west6 Zurigo icona foglia A basse emissioni di CO2
northamerica-northeast1 Montreal icona foglia A basse emissioni di CO2
southamerica-east1 San Paolo icona foglia A basse emissioni di CO2
us-west2 Los Angeles
us-west3 Salt Lake City
us-west4 Las Vegas

Seleziona la regione

Puoi selezionare una regione per la tua funzione durante deployment.

gcloud

Se utilizzi Google Cloud CLI, puoi specificare la regione utilizzando Il flag --region:

gcloud functions deploy FUNCTION_NAME --region=REGION ...

Dove REGION è una delle regioni elencate sopra.

Console

Se utilizzi la console Google Cloud, puoi selezionare la regione quando devi creare ed eseguire il deployment di una funzione.

  1. Nella console Google Cloud, vai alla panoramica di Cloud Functions .

    Vai alla pagina Panoramica di Cloud Functions

    Assicurati che il progetto per cui hai abilitato Cloud Functions è selezionata.

  2. Fai clic su Crea funzione.

  3. Nel campo Regione, seleziona una regione.

Puoi eseguire il deployment delle funzioni in diverse regioni all'interno di un progetto, ma una volta regione è stata selezionata per una funzione che non può essere modificata.

Le funzioni in una data regione di un determinato progetto devono essere univoche (caso sensibili), ma le funzioni possono essere condivise in più regioni o tra progetti con lo stesso nome.

Impostazione di una regione predefinita

Puoi impostare una regione predefinita utilizzando Google Cloud CLI come segue:

gcloud config set functions/region REGION

Ad esempio:

gcloud config set functions/region europe-west1

Residenza dei dati

Cloud Functions offre una garanzia di residenza dei dati al momento dell'esecuzione della funzione ambito (Conformità ambito A, esecuzione della funzione), in cui una determinata funzione fornisce la residenza dei dati per la chiamata/l'esecuzione della funzione.

Questa conformità si applica sia alle funzioni HTTP che funzioni basate su eventi, Per basate su eventi, Cloud Functions è compatibile con la residenza dei dati nel momento in cui il prodotto upstream (prodotto che attiva) invia l'evento a di Cloud Functions. Per questo è importante garantire che l'upstream (come Cloud Storage o Pub/Sub) è di per sé conforme alla residenza dei dati.

Best practice per cambiare regione

Se devi modificare la regione in cui viene eseguito il deployment di una funzione, segui le di seguito.

Funzioni HTTP

Per le funzioni HTTP, ti consigliamo prima di eseguire nuovamente il deployment della funzione HTTP regione di destinazione (può avere lo stesso nome) e poi modificare lo stato originale per reindirizzare la relativa richiesta HTTP alla nuova funzione. Se i clienti I reindirizzamenti supportano le funzioni HTTP, puoi semplicemente modificare la funzione originale per restituire uno stato di reindirizzamento HTTP (301) insieme all'URL del nuovo personalizzata. Se i tuoi client non gestiscono correttamente i reindirizzamenti, puoi utilizzare il proxy della richiesta dalla funzione originale alla nuova funzione avviando una nuova dalla funzione originale alla nuova funzione. L'ultimo passaggio consiste per assicurarti che tutti i client chiamino la nuova funzione.

Funzioni basate su eventi

Adotta le funzioni basate su eventi una semantica per la consegna di eventi "at-least-once", che significa che in alcune circostanze possono ricevere eventi duplicati e che così dovrebbero devono essere sempre implementate in modo da essere idempotenti. Se la funzione è già idempotente, puoi semplicemente rieseguire il deployment della funzione nella nuova regione con stesso trigger di evento e rimuovi la funzione precedente dopo aver verificato che la nuova funzione riceve correttamente il traffico. Durante questa transizione ricevono eventi.

Se la tua funzione non è attualmente idempotente o la sua idempotenza non che si estende oltre la regione, ti consigliamo di implementare idempotenza prima di spostare la funzione.