Cloud Functions v2 公共預覽版

Cloud RunEventarc提供支持,Cloud Functions for Firebase v2 有可能為您提供更強大的基礎架構、對性能和可擴展性的高級控制以及對函數運行時的更多控制。此公開預覽文檔解釋了 v2 Beta 計劃中的新增功能和可用功能,並提供了有關如何使用新 API(無論是單獨使用還是與 Cloud Functions for Firebase v1 API 一起使用)的一些指導。

Cloud Functions for Firebase v2 的新增功能

Cloud Functions for Firebase v2 目前提供的更改和增強功能包括:

  • 函數實例現在可以一次執行多個請求。此功能適用於具有一個專用 CPU 或更高版本的功能。可以使用setGlobalOptions方法基於每個函數或跨所有函數設置並發級別。如果未指定,具有 1 個或更高專用 CPU 的新函數將默認為 80 個並發請求。請參閱允許並發請求
  • 使用新的cors設置保護您的可調用函數和 HTTP 函數。 HTTP 觸發器現在也有一個cors設置,使 CORS 更易於管理
  • Cloud Functions 現在基於Cloud Run構建。如果您不熟悉 Cloud Run,請不要擔心:構建函數和以前一樣簡單。 Cloud Run 是一種更現代的無服務器產品,可為您提供更好的性能、更好的配置、更好的監控等。
  • Google 已與行業領導者合作創建CloudEvents 規範。事件處理函數現在使用這個開放標準作為它們的事件簽名。
  • 新的觸發器類型包括Firebase 警報觸發器、Firebase 擴展的自定義事件觸發器,以及用於在 Cloud Tasks 上運行資源密集型任務的任務隊列函數(任務隊列函數在 v1 中也可用)。
  • firebase-functions SDK 已被重新設計為更原生於現代 JavaScript。您可以全局配置 v2 函數、使用選項對象和使用模塊化導入
  • 如果長時間運行的工作負載需要,HTTP 函數現在可以有1 小時的超時時間(之前是 9 分鐘)
  • 函數實例現在默認為默認計算服務帳戶,而不是應用引擎服務帳戶。

公共預覽期間的限制

Cloud Functions v2 的這個有限的公共預覽版尚未包含完整的計劃功能集,也不提供與 Cloud Functions v1 相同的完整功能。它在可用的觸發器和區域方面受到限制,並且具有本節中描述的其他當前限制。

當前可用的 Cloud Functions 位置

Cloud Functions v2 目前在以下區域提供:

  • europe-north1
  • europe-west1
  • europe-west4
  • us-central1
  • us-east1
  • us-west1

當前可用的 Cloud Functions 觸發器

Cloud Functions v2 支持以下 Firebase 後台觸發器:

  • Firebase 實時數據庫
  • 雲儲存
  • Firebase 警報
  • 發布/訂閱
  • 可調用對象
  • 雲任務
  • HTTP

Cloud Functions v2目前不支持以下觸發器:

  • 雲防火牆
  • Firebase 身份驗證
  • 谷歌分析
  • 預定功能
  • Firebase 遠程配置
  • Firebase 測試實驗室

其他限制

這些限制也適用於 Cloud Functions v2:

  • 函數名稱僅限於小寫字母、數字和破折號。
  • Firebase CLI 或 Firebase 控制台尚未內置完全可觀察性。要觀察您的函數實例,請使用底層Cloud Run 服務的 Google Cloud Console。
  • Firebase Local Emulator Suite 目前在 v2 中支持 HTTP、Cloud Storage 和 Pub/Sub 功能。
  • HTTP 函數尚不支持cloudfunctions.net URL;暫時,您會看到.run.app URL。此限制也會影響可調用任務隊列函數的調用(有關可接受的解決方法,請參閱相應指南)。
  • 冷啟動在 v2 中尚未優化,暫時可能比 v1 慢得多。但是,由於並發性,最終用戶應該會經歷更少的冷啟動。