Cloud Run functions 位置 (第 1 代)

Cloud Run 函式具有「地區性」,這表示執行 Cloud Run 函式的基礎架構位於特定地區,並由 Google 代管,可為該地區內所有區域提供備援功能。

選擇執行 Cloud Run 函式的區域時,主要考量因素應為延遲時間和可用性。一般來說,您可以選擇距離 Cloud Run 函式使用者最近的地區,但也應該考慮應用程式使用的其他 Google Cloud 產品和服務所處的位置。如果跨多個位置使用服務,可能會影響應用程式的延遲時間和定價

Cloud Run 函式的可用區域如下所示。不同版本的 Cloud Run 函式適用於不同區域。

第 1 級價格

Cloud Run Functions 可在下列級別 1 價格區域使用:

區域 位置 二氧化碳排放量
asia-east1 台灣
asia-east2 香港
asia-northeast1 東京
asia-northeast2 大阪
europe-west1 比利時 節能綠葉圖示 二氧化碳排放量低2
europe-west2 倫敦
us-central1 愛荷華州 節能綠葉圖示 二氧化碳排放量低2
us-east1 南卡羅來納州
us-east4 北維吉尼亞州
us-west1 奧勒岡州 節能綠葉圖示 二氧化碳排放量低2

第 2 級定價

Cloud Run Functions 可在下列級別 2 價格區域使用:

區域 位置 二氧化碳排放量
asia-northeast3 首爾
asia-southeast1 新加坡
asia-southeast2 雅加達
asia-south1 孟買
australia-southeast1 雪梨
europe-central2 華沙
europe-west3 法蘭克福
europe-west6 蘇黎世 節能綠葉圖示 二氧化碳排放量低2
northamerica-northeast1 蒙特婁 節能綠葉圖示 二氧化碳排放量低2
southamerica-east1 聖保羅 節能綠葉圖示 二氧化碳排放量低2
us-west2 洛杉磯
us-west3 鹽湖城
us-west4 拉斯維加斯

選取區域

您可以在部署期間選取函式區域。

gcloud

如果您使用 Google Cloud CLI,可以透過 --region 標記指定區域:

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

其中 REGION 是上述其中一個區域。

控制台

如果您使用 Google Cloud 控制台,可在建立及部署函式時選取區域。

  1. 前往 Google Cloud 控制台的「Cloud Run functions Overview」(Cloud Run 函式總覽) 頁面。

    前往「Cloud Run functions Overview」(Cloud Run 函式總覽) 頁面

    請確保選取的是已啟用 Cloud Run 函式的專案。

  2. 按一下 [Create Function] (建立函式)

  3. 在「Region」(區域) 欄位中選取區域。

您可以將函式部署至專案內的不同地區,但為函式選取地區之後,就無法再變更。

特定專案中特定區域的函式名稱不得重複 (區分大小寫),但不同區域或專案的函式可以共用相同名稱。

設定預設區域

您可以使用 Google Cloud CLI 設定預設區域,方法如下:

gcloud config set functions/region REGION

例如:

gcloud config set functions/region europe-west1

資料落地

Cloud Run Functions 在函式執行範圍 (範圍 A 法規遵循 - 函式執行) 提供資料落地保證,其中指定函式會為函式呼叫/執行提供資料落地服務。

這項規範適用於 HTTP 函式和事件驅動函式。如果是事件導向函式,上游產品 (觸發產品) 將事件傳送至 Cloud Run 函式時,Cloud Run 函式就會遵守資料落地規定。因此,請務必確保上游產品 (例如 Cloud Storage 或 Pub/Sub) 本身符合資料落地規定。

變更區域的最佳做法

如果您需要變更部署函式的地區,請按照下列建議操作。

HTTP 函式

針對 HTTP 函式,我們建議您先將 HTTP 函式重新部署至目標地區 (它可以擁有相同名稱),然後變更原始函式,將其 HTTP 要求重新導向至新函式。如果 HTTP 函式的用戶端支援重新導向,您只要變更原始函式,傳回 HTTP 重新導向狀態 (301) 和新函式的網址即可。如果用戶端無法妥善處理重新導向,您可以從原始函式發起新要求,將要求從原始函式 Proxy 到新函式。最後一個步驟是確保所有用戶端都呼叫新函式。

事件導向函式

事件導向函式採用「至少一次」的事件傳遞語意,也就是說,在某些情況下,函式可能會收到重複事件,因此一律應實作為等冪。如果函式已是等冪函式,只要使用相同的事件觸發條件,在新區域重新部署函式,並確認新函式正確接收流量後,即可移除舊函式。在這個轉換過程中,兩個函式都會收到事件。

如果您的函式目前並非冪等,或其冪等未延伸到地區之外,則我們建議您先實作冪等,再移動函式。