Cloud Functions for Firebase 有兩個版本:
- Cloud Functions (第 2 代),可將函式部署為 Cloud Run 上的服務,讓您使用 Eventarc 和 Pub/Sub 觸發函式。
- Cloud Functions (第 1 代):函式原始版本,事件觸發條件和可設定性有限。
建議您盡可能選擇 Cloud Functions (第 2 代) 來使用新功能。不過,我們計畫繼續支援 Cloud Functions (第 1 代)。
本頁面說明 Cloud Functions 中推出的功能,並比較這兩個產品版本。
Cloud Functions (第 2 代)
Cloud Functions 是 Firebase 的新一代函式即服務產品。Cloud Functions (第 2 代) 以 Cloud Run 和 Eventarc 為基礎,提供更完善的基礎架構和更廣泛的事件涵蓋範圍,包括:Cloud Functions
- 以 Cloud Run 為基礎:函式以 Cloud Build 建構,並使用預設的 Cloud Run 執行環境部署為 Cloud Run 服務。您可以像自訂 Cloud Run 服務一樣自訂函式。請參閱 Cloud Run 說明文件,瞭解如何設定服務,例如記憶體限制、環境變數等。
- 要求處理時間較長:執行要求時間較長的工作負載,例如處理來自 Cloud Storage 或 BigQuery 的大量資料串流。
- 較大的執行個體大小:執行較大的記憶體內、運算密集型和平行工作負載。
- 提升並行程度:使用單一函式例項處理多個並行要求,盡量減少冷啟動次數並縮短延遲時間。
- 流量管理:在不同函式修訂版本之間拆分流量,或將函式復原為先前的版本。
- Eventarc 整合:原生支援 Eventarc 觸發條件,將 Eventarc 支援的 90 多個事件來源全數帶到 Cloud Functions。
- 更廣泛的 CloudEvents 支援:所有語言執行階段都支援業界標準的 CloudEvents,提供一致的開發人員體驗。
詳情請參閱比較表。
由於 Cloud Functions 會在 Cloud Run 上將函式部署為服務,因此 Cloud Functions 會與 Cloud Run 共用資源配額和限制。請參閱「配額」。
比較表
功能 | Cloud Functions (第 1 代) | Cloud Functions |
---|---|---|
映像檔登錄 | Container Registry或Artifact Registry | 僅限Artifact Registry |
要求逾時 | 最多 9 分鐘 |
|
執行個體大小 | 2 個 vCPU,最高 8 GB RAM | 4 個 vCPU 最多可搭配 16 GiB RAM |
並行 | 每個函式執行個體 1 項並行要求 | 每個函式執行個體最多可處理 1000 項並行要求 |
定價
如需價格資訊,請參閱 Firebase 定價方案。
如果您使用 Cloud Functions,可以只查看與 Cloud Functions 相關的費用,方法如下:
- 前往 Google Cloud 控制台的「Cloud Billing 報告」頁面。
- 如果系統顯示提示,請選取與 Google Cloud 專案相關聯的帳單帳戶。
- 在「Filters」(篩選器) 面板的「Labels」(標籤) 下方,新增標籤篩選器,並將鍵設為
goog-managed-by
,值設為cloudfunctions
。
限制
Cloud Functions for Firebase (第 2 代) 不支援Analytics事件。
雖然 Cloud Functions for Firebase (第 2 代) 支援驗證封鎖事件,但它不支援與第 1 代相同的基本 Authentication 事件集。
不過,由於第 1 代和第 2 代函式可以並存於同一個來源檔案中,您仍可在第 1 代中開發及部署 Analytics 和基本 Authentication 觸發條件,並與第 2 代函式搭配使用。