Località delle funzioni di Cloud Run
Cloud Run Functions è regionale, il che significa che l'infrastruttura che esegue un La funzione Cloud Run 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 Run, le considerazioni principali devono essere la latenza e la disponibilità. In genere puoi selezionare la regione più vicina agli utenti della tua funzione Cloud Run, ma devi anche considerare la posizione degli altri prodotti e servizi Google Cloud utilizzati dalla tua app. L'utilizzo dei servizi in più località può influire la latenza e i prezzi dell'app.
Le regioni disponibili per le funzioni di Cloud Run sono elencate di seguito. Le diverse versioni delle funzioni di Cloud Run hanno una disponibilità regionale diversa; consulta la sezione "Versioni dei prodotti supportate" colonna nelle tabelle.
Prezzi del livello 1
Le funzioni Cloud Run sono disponibili nelle seguenti regioni con prezzi per il livello 1:
Regione | Località | Emissioni di CO2 |
---|---|---|
asia-east1 |
Taiwan | |
asia-northeast1 |
Tokyo | |
asia-northeast2 |
Osaka | |
europe-north1 |
Finlandia | Bassi livelli di CO2 |
europe-southwest1 |
Madrid | |
europe-west1 |
Belgio | Bassi livelli di CO2 |
europe-west4 |
Paesi Bassi | |
europe-west8 |
Milano | |
europe-west9 |
Parigi | A basse emissioni di CO2 |
me-west1 |
Tel Aviv | |
us-central1 |
Iowa | A basse emissioni di CO2 |
us-east1 |
Carolina del Sud | |
us-east4 |
Virginia del Nord | |
us-east5 |
Columbus | |
us-south1 |
Dallas | |
us-west1 |
Oregon | A basse emissioni di CO2 |
Prezzi di Livello 2
Cloud Run Functions è disponibile nelle seguenti regioni con Prezzi di livello 2:
Regione | Località | Emissioni di CO2 |
---|---|---|
asia-east2 |
Hong Kong | |
asia-northeast3 |
Seul | |
asia-southeast1 |
Singapore | |
asia-southeast2 |
Giacarta | |
asia-south1 |
Mumbai | |
asia-south2 |
Delhi, India | |
australia-southeast1 |
Sydney | |
australia-southeast2 |
Melbourne | |
europe-central2 |
Varsavia | |
europe-west2 |
Londra | |
europe-west3 |
Francoforte | A basse emissioni di CO2 |
europe-west6 |
Zurigo | Bassi livelli di CO2 |
europe-west10 |
Berlino | |
europe-west12 |
Torino | |
me-central1 |
Doha | |
me-central2 |
Dammam | |
northamerica-northeast1 |
Montreal | Bassi livelli di CO2 |
northamerica-northeast2 |
Toronto | A basse emissioni di CO2 |
southamerica-east1 |
San Paolo | Bassi livelli di CO2 |
southamerica-west1 |
Santiago, Cile | |
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 crei ed esegui il deployment di una funzione.
Nella console Google Cloud, vai alla pagina Panoramica delle funzioni Cloud Run.
Vai alla pagina Panoramica delle funzioni Cloud Run
Assicurati che sia selezionato il progetto per cui hai attivato le funzioni Cloud Run.
Fai clic su Crea funzione.
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
Le funzioni Cloud Run forniscono una garanzia di residenza dei dati nell'ambito dell'esecuzione della funzione (conformità allo scopo A: esecuzione della funzione), in cui una determinata funzione garantisce la residenza dei dati per l'invocazione/l'esecuzione della funzione.
Questa conformità si applica sia alle funzioni HTTP che funzioni basate su eventi, Per basate su eventi, Cloud Run Functions è compatibile con la residenza dei dati nel momento in cui il prodotto upstream (prodotto che attiva) invia l'evento a le funzioni di Cloud Run. 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 se la sua idempotenza non si estende oltre la regione, ti consigliamo di implementare prima l'idempotenza prima di spostare la funzione.