設定執行個體數量下限 (第 1 代)
您可以設定執行個體數量下限,避免應用程式冷啟動,並縮短應用程式延遲時間。
Cloud Run 函式會建立新的函式執行個體來進行資源調度。其中每個執行個體每次只能處理一個要求,因此要求量大幅激增時,系統會建立新執行個體來處理需求,因此通常會導致等候時間變長。
由於函式是無狀態的,因此函式有時會從頭初始化執行環境,這稱為「冷啟動」。冷啟動可能需要大量時間才能完成,因此如果應用程式對延遲時間相當敏感,建議您設定 Cloud Run 函式執行個體的最低數量。
閒置執行個體和冷啟動
為了盡可能降低冷啟動的影響,Cloud Run 函式會在處理要求後,讓函式執行個體閒置一段未指定的時間。在這個閒置時間內,如果需要處理其他要求,可能會保留開放資料庫連線等資源。以這種方式閒置的執行個體會計入函式的執行個體數量上限,但系統不會針對這段閒置時間向您收費。
這項內建行為可能無法滿足應用程式的需求,特別是如果應用程式對延遲時間相當敏感的話。明確設定執行個體數量下限,有助於避免冷啟動並縮短應用程式延遲時間。
請注意,如果已設定執行個體數量下限,而執行個體處於閒置狀態,則除非這些執行個體最近有提供流量,否則不會視為處於活動狀態。舉例來說,如果某個函式最近沒有提供流量,「有效執行個體」指標可能會顯示沒有有效執行個體,即使已設定最小執行個體值也一樣。
另請注意,設定執行個體數量下限後,系統會針對這些執行個體的閒置時間向您收費,詳情請參閱價格。
設定及清除執行個體數量下限
您可以在部署期間為函式設定執行個體數量下限。每個函式都有自己的最小執行個體設定。
設定執行個體數量下限
您可以使用 Google Cloud CLI 或 Google Cloud 控制台設定最低執行個體限制。
主控台
如要為新函式設定執行個體數量下限,請按照下列步驟操作:
如要建立新函式,請前往Google Cloud 控制台的「Cloud Run 函式」頁面:
前往「Cloud Run 函式」頁面按一下「建立函式」。
為函式填寫必填欄位。
展開頁面底部的「Runtime, build...」部分,然後按一下「Runtime」分頁標籤。
在「自動調度資源」部分的「執行個體數量下限」欄位中,輸入大於或等於 1 的數字。
點按「Next」。
按一下 [Deploy] (部署)。
如要為現有函式設定執行個體數量下限,請按照下列步驟操作:
前往 Google Cloud 控制台的「Cloud Run 函式」頁面:
前往「Cloud Run 函式」頁面按一下現有函式的名稱,前往「Function details」頁面。
按一下 [編輯]。
展開頁面底部的「Runtime, build...」部分,然後按一下「Runtime」分頁標籤。
在「自動調度資源」部分的「執行個體數量下限」欄位中,輸入大於或等於 1 的數字。
點按「Next」。
按一下 [Deploy] (部署)。
gcloud
如要設定執行個體的最低限制,請執行下列指令:
gcloud functions deploy FUNCTION_NAME \
--no-gen2 \
--min-instances MIN_INSTANCE_LIMIT
更改下列內容:
FUNCTION_NAME:函式名稱。
MIN_INSTANCE_LIMIT:要設為最小執行個體數量上限的數字,不得超過 1000。
函式執行個體數量下限已設定。
清除執行個體數量下限
您可以使用 Google Cloud CLI 或 Google Cloud 控制台清除或移除執行個體的最低限制。
主控台
如要清除函式的執行個體數量下限,請按照下列步驟操作:
前往Google Cloud 控制台的「Cloud Run 函式」頁面:
前往「Cloud Run 函式」頁面按一下現有函式的名稱,前往「Function details」頁面。
按一下 [編輯]。
展開頁面底部的「Runtime, build...」部分,然後按一下「Runtime」分頁標籤。
在「自動調度資源」部分的「執行個體數量下限」欄位中輸入 0。
點按「Next」。
按一下 [Deploy] (部署)。
gcloud
在部署期間使用 --clear-min-instances
標記:
gcloud functions deploy FUNCTION_NAME --clear-min-instances
函式執行個體數量下限已清除。
取得設定執行個體數量下限的建議
Recommender 服務會自動為已部署的函式提供最佳化建議,這些函式可從設定最小執行個體數量中受益。