Cloud Functions 版本比較

Cloud Functions for Firebase 有兩種版本:

  • Cloud Functions (第 2 代),可將您的函式部署為 Cloud Run 上的服務,讓您使用 EventarcPub/Sub 觸發函式。
  • Cloud Functions (第 1 代):函式的原始版本,事件觸發事件和可設定性有限。

建議您盡可能選擇 Cloud Functions (第 2 代) 來執行新功能。不過,我們預計會繼續支援 Cloud Functions (第 1 代)。

本頁面說明 Cloud Functions 中推出的功能,並提供兩個產品版本的比較。

Cloud Functions (第 2 代)

Cloud Functions 是 Firebase 的新一代 Functions-as-a-Service 服務。Cloud Functions (第 2 代) 建構於 Cloud RunEventarc 之上,為 Cloud Functions 提供更完善的基礎架構和更廣泛的事件涵蓋範圍,包括:

  • 建構於 Cloud Run:函式以 Cloud Build 建構,並部署為 Cloud Run 服務。這樣一來,您就能像自訂 Cloud Run 服務一樣自訂函式。請參閱 Cloud Run 說明文件,瞭解設定服務的選項,例如記憶體限制環境變數等。
  • 較長的要求處理時間:執行較長的要求工作負載,例如處理來自 Cloud StorageBigQuery 的大量資料串流。
  • 較大的執行個體大小:執行較大的記憶體內、耗用大量運算資源和平行處理的工作負載。
  • 改善並行性:使用單一函式例項處理多項並行要求,盡可能減少冷啟動並縮短延遲時間。
  • 流量管理:在不同函式修訂版本之間拆分流量,或將函式復原為先前版本。
  • Eventarc 整合:原生支援 Eventarc 觸發條件,將 Eventarc 支援的 90 多個事件來源帶入 Cloud Functions
  • 更廣泛的 CloudEvents 支援:支援所有語言執行階段的業界標準 CloudEvents,提供一致的開發人員體驗。

詳情請參閱比較表

由於 Cloud Functions 會將函式部署為 Cloud Run 上的服務,因此 Cloud Functions 會與 Cloud Run 共用資源配額和限制。請參閱「配額」一文。

比較表

功能 Cloud Functions (第 1 代) Cloud Functions
圖片登錄 Container RegistryArtifact Registry 僅限Artifact Registry
要求逾時 最長 9 分鐘
  • HTTP 觸發函式的執行時間上限為 60 分鐘
  • 事件觸發函式最多可執行 9 分鐘
執行個體大小 最多 8 GB RAM 和 2 個 vCPU 最多 16 GiB RAM 和 4 個 vCPU
並行 每個函式執行個體 1 個並行要求 每個函式執行個體最多可處理 1,000 個並行要求

定價

如需價格資訊,請參閱 Firebase 定價方案

如果您使用 Cloud Functions,可以查看僅與 Cloud Functions 相關的費用,步驟如下:

  1. 前往 Google Cloud 控制台的「Reports」(報表) 頁面Cloud Billing
  2. 如果系統顯示提示,請選取與 Google Cloud 專案相關聯的帳單帳戶。
  3. 在「篩選器」面板的「標籤」下方,新增標籤篩選器,鍵為 goog-managed-by,值為 cloudfunctions

限制

Cloud Functions for Firebase (第 2 代) 不支援 Analytics 事件。

雖然 Cloud Functions for Firebase (第 2 代) 支援驗證封鎖事件,但不支援與第 1 代相同的 Authentication 基本事件組合。

不過,由於第 1 代和第 2 代函式可在同一來源檔案中並存,您仍可在第 1 代函式中,搭配第 2 代函式開發及部署 Analytics 和基本 Authentication 觸發條件。