Publiczna wersja zapoznawcza Cloud Functions v2

Oparte na Cloud Run i Eventarc , Cloud Functions dla Firebase v2 może zapewnić wydajniejszą infrastrukturę, zaawansowaną kontrolę nad wydajnością i skalowalnością oraz większą kontrolę nad środowiskiem wykonawczym funkcji. Ta publiczna dokumentacja w wersji zapoznawczej wyjaśnia, co nowego i co jest dostępne na tym etapie programu beta w wersji 2, a także zawiera wskazówki dotyczące korzystania z nowego interfejsu API, niezależnie od tego, czy jest on samodzielny, czy w połączeniu z interfejsami API Cloud Functions dla Firebase w wersji 1.

Co nowego w Cloud Functions dla Firebase v2

Zmiany i ulepszenia dostępne obecnie w Cloud Functions dla Firebase v2 obejmują:

  • Instancje funkcji mogą teraz wykonywać jednocześnie więcej niż jedno żądanie . Ta funkcja jest dostępna dla funkcji z jednym dedykowanym procesorem lub wyższym. Poziomy współbieżności można ustawić na podstawie funkcji lub we wszystkich funkcjach za pomocą metody setGlobalOptions . Jeśli nie określono, nowe funkcje z 1 dedykowanym procesorem lub wyższym będą domyślnie obsługiwać 80 jednoczesnych żądań. Zobacz Zezwalanie na współbieżne żądania .
  • Zabezpiecz swoje funkcje wywoływane i HTTP za pomocą nowego ustawienia cors . Wyzwalacze HTTP mają teraz również ustawienie cors , aby ułatwić zarządzanie CORS .
  • Cloud Functions jest teraz oparty na Cloud Run . Jeśli nie znasz Cloud Run, nie martw się: tworzenie funkcji jest tak samo proste jak wcześniej. Cloud Run to nowocześniejszy produkt bezserwerowy, który zapewnia lepszą wydajność, lepszą konfigurację, lepsze monitorowanie i nie tylko.
  • Google współpracował z liderami branży, aby stworzyć specyfikację CloudEvents . Funkcje obsługi zdarzeń używają teraz tego otwartego standardu jako sygnatury zdarzenia.
  • Nowe typy wyzwalaczy obejmują wyzwalacze alertów Firebase , niestandardowe wyzwalacze zdarzeń dla rozszerzeń Firebase oraz funkcje kolejki zadań do uruchamiania zadań wymagających dużej ilości zasobów w Cloud Tasks (funkcje kolejki zadań są również dostępne w wersji 1).
  • Pakiet SDK firebase-functions Firebase został przeprojektowany jako bardziej natywny dla współczesnego JavaScriptu. Możesz konfigurować funkcje v2 globalnie, używać obiektów opcji i używać importów modułowych .
  • Funkcje HTTP mogą teraz mieć limit czasu wynoszący 1 godzinę (wcześniej 9 minut) , jeśli jest to potrzebne w przypadku długotrwałych obciążeń.
  • Instancje funkcji domyślnie przyjmują teraz domyślne konto usługi obliczeniowej, a nie konto usługi App Engine.

Ograniczenia podczas publicznego podglądu

Ta ograniczona publiczna wersja zapoznawcza Cloud Functions v2 nie obejmuje jeszcze pełnego zestawu planowanych funkcji ani nie zapewnia pełnej zgodności funkcji z Cloud Functions v1. Jest ograniczony pod względem dostępnych wyzwalaczy i regionów oraz ma inne aktualne ograniczenia opisane w tej sekcji.

Obecnie dostępne lokalizacje Cloud Functions

Cloud Functions v2 jest obecnie dostępny w następujących regionach:

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

Obecnie dostępne wyzwalacze Cloud Functions

Cloud Functions v2 obsługuje następujące wyzwalacze Firebase działające w tle:

  • Magazyn w chmurze
  • Alerty Firebase
  • Pub/Sub
  • Callables
  • Zadania w chmurze
  • HTTP

Cloud Functions v2 nie obsługuje obecnie następujących wyzwalaczy:

  • Baza danych czasu rzeczywistego Firebase
  • Cloud Firestore
  • Uwierzytelnianie Firebase
  • Google Analytics
  • Zaplanowane funkcje
  • Zdalna konfiguracja Firebase
  • Laboratorium testowe Firebase

Inne ograniczenia

Te ograniczenia dotyczą również Cloud Functions v2:

  • Nazwy funkcji są ograniczone do małych liter, cyfr i myślników.
  • Pełna obserwowalność nie jest jeszcze wbudowana w interfejs Firebase CLI ani konsolę Firebase. Aby obserwować instancje funkcji, użyj konsoli Google Cloud dla podstawowej usługi Cloud Run .
  • Pakiet emulatorów lokalnych Firebase obsługuje obecnie funkcje HTTP, Cloud Storage i Pub/Sub w wersji 2.
  • Adresy URL cloudfunctions.net nie są jeszcze obsługiwane dla funkcji HTTP; tymczasowo zamiast tego zobaczysz adresy URL .run.app . To ograniczenie ma również wpływ na wywoływanie funkcji wywoływanych i funkcji kolejki zadań (zobacz odpowiednie przewodniki, aby zapoznać się z akceptowalnymi obejściami).
  • Zimne starty nie zostały jeszcze zoptymalizowane w wersji 2 i tymczasowo mogą być znacznie wolniejsze niż w wersji 1. Jednak użytkownicy końcowi powinni ogólnie odczuwać mniej zimnych startów dzięki współbieżności.