Cloud Run 函式位置 (第 1 代)
Cloud Run 函式具有「地區性」,這表示執行 Cloud Run 函式的基礎架構位於特定地區,並由 Google 代管,可為該地區內所有區域提供備援功能。
選擇執行 Cloud Run 函式的地區時,請將延遲時間和可用性做為主要考量。一般來說,您可以選擇距離 Cloud Run 函式使用者最近的地區,但也應該考慮應用程式使用的其他 Google Cloud 產品和服務所處的位置。如果跨多個位置使用服務,可能會影響應用程式的延遲時間和定價。
下方列出可用於 Cloud Run 函式的區域。不同版本的 Cloud Run 函式在不同區域的可用性也不同。
級別 1 定價
Cloud Run 函式可在下列採用級別 1 價格的地區使用:
地區 | 位置 | 二氧化碳排放量 |
---|---|---|
asia-east1 |
台灣 | |
asia-east2 |
香港 | |
asia-northeast1 |
東京 | |
asia-northeast2 |
大阪 | |
europe-west1 |
比利時 |
|
europe-west2 |
倫敦 | |
us-central1 |
愛荷華州 |
|
us-east1 |
南卡羅來納州 | |
us-east4 |
北維吉尼亞州 | |
us-west1 |
奧勒岡州 |
|
級別 2 定價
Cloud Run 函式可在下列採用級別 2 價格的地區使用:
地區 | 位置 | 二氧化碳排放量 |
---|---|---|
asia-northeast3 |
首爾 | |
asia-southeast1 |
新加坡 | |
asia-southeast2 |
雅加達 | |
asia-south1 |
孟買 | |
australia-southeast1 |
雪梨 | |
europe-central2 |
華沙 | |
europe-west3 |
法蘭克福 |
|
europe-west6 |
蘇黎世 |
|
northamerica-northeast1 |
蒙特婁 |
|
southamerica-east1 |
聖保羅 |
|
us-west2 |
洛杉磯 | |
us-west3 |
鹽湖城 | |
us-west4 |
拉斯維加斯 |
選取區域
您可以在部署期間,為函式選取區域。
gcloud
如果您使用的是 Google Cloud CLI,可以使用 --region
標記指定區域:
gcloud functions deploy --no-gen2 FUNCTION_NAME --region=REGION ...
其中 REGION
是上述其中一個區域。
控制台
如果您使用的是 Google Cloud 控制台,可以在建立及部署函式時選取區域。
前往 Google Cloud 控制台的「Cloud Run 函式總覽」頁面。
前往「Cloud Run functions」(Cloud Run 函式) 總覽頁面
請確認選取的是已啟用 Cloud Run 函式的專案。
按一下 [Create Function] (建立函式)。
在「Region」欄位中選取區域。
您可以將函式部署至專案內的不同地區,但為函式選取地區之後,就無法再變更。
特定專案中特定區域的函式必須有專屬名稱 (區分大小寫),但不同區域或專案的函式可以共用相同名稱。
設定預設區域
您可以使用 Google Cloud CLI 設定預設區域,步驟如下:
gcloud config set functions/region REGION
例如:
gcloud config set functions/region europe-west1
資料落地
Cloud Run 函式會在函式執行範圍 (Scope A Compliance - 函式執行) 中提供資料落地保證,其中特定函式會提供函式叫用/執行的資料落地。
這項規定適用於 HTTP 函式和事件驅動函式。對於事件導向函式,Cloud Run 函式會在上游產品 (觸發產品) 將事件傳送至 Cloud Run 函式時,即符合資料儲存地點規定。因此,請務必確保上游產品 (例如 Cloud Storage 或 Pub/Sub) 本身符合資料居住地規定。
變更區域的最佳做法
如果您需要變更部署函式的地區,請按照下列建議操作。
HTTP 函式
針對 HTTP 函式,我們建議您先將 HTTP 函式重新部署至目標地區 (它可以擁有相同名稱),然後變更原始函式,將其 HTTP 要求重新導向至新函式。如果 HTTP 函式的用戶端支援重新導向,您只需變更原始函式,即可傳回 HTTP 重新導向狀態 (301
) 和新函式的網址。如果您的用戶端無法妥善處理重新導向,您可以透過啟動從原始函式到新函式的新要求,代理從原始函式到新函式的要求。最後一個步驟是確保所有用戶端都呼叫新函式。
事件導向函式
事件導向函式採用至少一次事件傳遞語意,也就是說,在某些情況下,這些函式可能會收到重複事件,因此應一律實作為冪等。如果函式已是同值異構的,您只需在新的區域中使用相同的事件觸發事件重新部署函式,並在確認新函式正確接收流量後移除舊函式即可。在這個轉換過程中,兩個函式都會收到事件。
如果您的函式目前並非冪等,或其冪等未延伸到地區之外,則我們建議您先實作冪等,再移動函式。