Firebase Hosting integruje się z bezserwerowymi opcjami przetwarzania danych, w tym: Cloud Functions for Firebase i Cloud Run. Używasz Firebase Hosting z za pomocą tych opcji możesz hostować mikroserwisy, kierując żądania HTTPS do wywołania z funkcji i skonteneryzowanych aplikacji w zarządzanym, bezpiecznym środowisku.
Cloud Functions for Firebase: piszesz i wdrażasz czyli kod backendu, który reaguje na określony aktywator. Następnie za pomocą funkcjiFirebase Hosting możesz kierować żądania HTTPS, aby wywołać funkcję.
Cloud Run: tworzysz i wdrażasz aplikację spakowaną w obraz kontenera. Następnie za pomocą funkcji Firebase Hosting może kierować żądania HTTPS w celu aktywowania skonteneryzowanej aplikacji.
Przypadki użycia
Jak korzystać z opcji bezserwerowego przetwarzania danych w usłudze Firebase Hosting?
Wyświetlanie treści dynamicznych – oprócz wyświetlania treści statycznych w witrynie Hosting możesz wyświetlać odpowiedzi generowane dynamicznie z funkcji lub z aplikacji w kontenerze, która wykonuje logikę po stronie serwera.
Możesz na przykład wskazać wzorzec adresu URL (taki jak
/blog/<blog-post-id>
) do strony funkcja, która korzysta z parametru identyfikatora posta na blogu w adresie URL do pobierania treści z Twojej bazy danych.Tworzenie interfejsów API typu REST – możesz utworzyć interfejs API mikroserwisu za pomocą funkcji.
Na przykład funkcje mogą obsługiwać logowanie na Twoim koncie witryny. Gdy witryna jest hostowana pod adresem
/
, wszystkie żądania wysyłane do domeny/api
są do interfejsu API mikroserwisu. Na przykład przeczytaj ten przykładowy kod open source.Buforuj zawartość dynamiczną – możesz skonfiguruj buforowanie zawartości dynamicznej w do globalnej sieci CDN.
Jeśli na przykład funkcja generuje nowe treści tylko okresowo, może przyspieszyć działanie aplikacji, przechowując wygenerowaną treść w pamięci podręcznej okresu. Możliwe jest też zmniejszenie kosztów wykonania, ponieważ jest wyświetlana z sieci CDN, a nie przez wyzwoloną funkcję lub i skonteneryzowaną aplikacją.
Przedrenderuj aplikacje typu single-page – możesz poprawić SEO i zoptymalizować udostępnianie w różnych sieciach społecznościowych, tworząc dynamiczne
meta
tagi. Do więcej informacji znajdziesz w tym filmie lub sprawdź ten przykładowy kod open source.
Wybór opcji bezserwerowej
Mimo że zarówno Cloud Functions for Firebase, jak i Cloud Run – zintegruj z Firebase Hosting oraz w pełni zarządzane, autoskalowanie i bezpieczne środowiska bezserwerowego, dwie opcje można wykorzystać w różnych przypadkach użycia. i odpowiedni poziom spersonalizowanej konfiguracji.
Jeśli korzystasz z dowolnej z opcji bezserwerowych, najlepiej jest współdzielić ją z serwerami dla Firebase Hosting po wdrożeniu w jednym z tych regionów:
us-west1
us-central1
us-east1
europe-west1
asia-east1
W tabeli poniżej znajdziesz podstawowe uwagi na temat używania Cloud Functions for Firebase – Cloud Run. Pełna lista limity, limity i wskaźniki można znaleźć w szczegółowej dokumentacji danej usługi (Cloud Functions for Firebase lub Cloud Run).
Rozważanie zakupu | Cloud Functions for Firebase | Cloud Run |
---|---|---|
Konfiguracja | Interfejs wiersza poleceń Firebase łączy wiele zadań w pojedyncze polecenia, od: do kompilowania i wdrażania. | Kontenery oferują więcej opcji dostosowania, dlatego zadania konfiguracji, kompilacji i wdrażania obejmują oddzielne kroki. |
Środowisko wykonawcze | Wymaga środowiska Node.js, ale możesz go określić który wersji Node.js. | Podczas tworzenia container, określasz środowisko wykonawcze. |
Obsługa języków i ramek | JavaScript i TypeScript Obsługiwane są frameworki internetowe, takie jak Express.js. |
Każdy język obsługiwany przez Dockerfiles, w tym Go, Node.js, Python, Java i inne Dla każdego języka obsługiwane są platformy internetowe. |
Czas oczekiwania na żądanie Hosting | 60 sekund (zobacz uwagę poniżej) | 60 sekund (zobacz uwagę poniżej) |
Równoczesność | 1 żądanie na instancję funkcji (brak równoczesności na instancję) |
Do 1000 równoczesnych żądań na instancję kontenera |
Płatności | Użycie danych Cloud Functions
Bezpłatny limit, ale wymagane jest konto Cloud Billing. Zobacz Najczęstsze pytania dotyczące Firebase. |
Użycie Cloud Run +
Container Registry miejsca na dane
Limit bezpłatnego wykorzystania, ale Wymagane jest Cloud Billing konto |