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ą funkcji Firebase Hosting, możesz kierować żądaniami HTTPS tak, aby uruchamiały Twoją funkcję do uruchomienia.
Cloud Run: piszesz i wdrażasz aplikacji spakowanej do obrazu kontenera. Następnie za pomocą funkcji Firebase Hosting może kierować żądania HTTPS w celu aktywowania skonteneryzowanej aplikacji.
Przypadki użycia
Jak możesz korzystać z opcji bezserwerowego przetwarzania danych w Firebase Hosting?
Wyświetlanie treści dynamicznych – oprócz wyświetlania treści statycznych na w witrynie Hosting, możesz wyświetlać odpowiedzi generowane dynamicznie z lub skonteneryzowaną aplikację wykonującą 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ą.
Wstępnie renderuj aplikacje jednostronicowe – możesz poprawić SEO i zoptymalizować udostępnianie w różnych sieciach społecznościowych za pomocą dynamicznych tagów
meta
. 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 dostosowywania, więc konfiguracja, kompilacja w określonych zadaniach wdrożeniowych. |
Ś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 platform | JavaScript i TypeScript Obsługiwane są platformy internetowe, np. 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
Limit bezpłatnego wykorzystania, ale Wymagane jest Cloud Billing konto. 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 |