Cloud Functions dla Firebase
Pierwsze kroki Przypadki użycia
Najważniejsze funkcje
| Integracja funkcji Firebase i łączenie Firebase z Google Cloud | Napisane przez Ciebie funkcje mogą reagować na zdarzenia generowane przez różne Firebase i Google Cloud usługi, od aktywatorów uwierzytelniania Firebase po aktywatory Cloud Storage. Integracja z usługami Firebase za pomocą pakietu Admin SDK i Cloud Functions oraz integracja z usługami innych firm dzięki zastosowaniu własnych webhooków. Cloud Functions pozwala zminimalizować ilość powtarzalnego kodu, co ułatwi Ci wykorzystywanie usług Firebase i Google Cloud we własnych funkcjach. |
| Bezobsługowość | Wdrażaj swój kod w języku JavaScript, TypeScript lub Python na naszych serwerach jednym poleceniem w wierszu poleceń. Gdy to zrobisz, Firebase będzie automatycznie skalować zasoby obliczeniowe w górę, w zależności od wzorców wykorzystania aplikacji przez użytkowników. Nie musisz zawracać sobie głowy danymi logowania, konfigurowaniem serwera, udostępnianiem nowych serwerów ani wycofywaniem z użytku starych |
| Prywatność i bezpieczeństwo logiki użytkownika | W wielu przypadkach deweloperzy wolą kontrolować logikę aplikacji na serwerze, aby uniemożliwić wprowadzanie do niej zmian po stronie klienta. Niekiedy też użytkownik chce zablokować możliwość analizowania wstecznego kodu. Cloud Functions jest całkowicie odizolowana od klienta, dzięki czemu masz gwarancję zachowania prywatności i pewność, że będzie robić dokładnie to, czego chcesz. |
Jak to działa?
Gdy napiszesz i wdrożysz funkcję, serwery Google natychmiast zaczną nią zarządzać. Możesz wywołać funkcję bezpośrednio za pomocą żądania HTTP, Admin SDK lub zaplanowanego zadania. W przypadku funkcji działających w tle serwery Google nasłuchują zdarzeń i uruchamiają funkcję, gdy zostanie ona aktywowana.
Gdy obciążenie wzrasta lub maleje, Google szybko skaluje liczbę instancji serwera wirtualnego potrzebnych do uruchomienia funkcji. Każda funkcja działa w izolacji, w swoim własnym środowisku z własną konfiguracją.
Cykl życia funkcji działającej w tle
- Piszesz kod nowej funkcji, wybierając dostawcę zdarzeń (np. Cloud Firestore) i określając warunki, w jakich funkcja ma być wykonywana.
- Gdy wdrożysz funkcję:
- Interfejs CLI Firebase tworzy archiwum
.zipz kodem funkcji, które jest następnie przesyłane do zasobnika Cloud Storage (z prefiksemgcf-sources), zanim Cloud Functions utworzy w Twoim projekcie repozytorium Artifact Registry (o nazwiegcf-artifacts). - Cloud Build pobiera kod funkcji i tworzy źródło funkcji. Logi Cloud Build możesz wyświetlić w Google Cloud konsoli.
- Obraz kontenera z kodem skompilowanych funkcji jest przesyłany do
prywatnego Artifact Registry repozytorium w Twoim projekcie
(o nazwie
gcf-artifacts), a nowa funkcja jest wdrażana.
- Interfejs CLI Firebase tworzy archiwum
- Gdy dostawca zdarzeń wygeneruje zdarzenie, które pasuje do warunków funkcji, kod zostanie wywołany. Funkcja ma dołączone konto usługi które można wykorzystać do uzyskania dostępu do innych usług Firebase za pomocą pakietu Firebase Admin SDK.
- Jeśli funkcja jest zajęta obsługą wielu zdarzeń, Google tworzy więcej instancji, aby przyspieszyć pracę. Jeśli funkcja jest nieaktywna, instancje są czyszczone.
- Gdy zaktualizujesz funkcję, wdrażając zaktualizowany kod, instancje starszych wersji są czyszczone wraz z artefaktami kompilacji w Artifact Registry, i zastępowane nowymi instancjami.
- Gdy usuniesz funkcję, wszystkie instancje i pliki ZIP zostaną wyczyszczone, wraz z powiązanymi artefaktami kompilacji w Artifact Registry. Połączenie między funkcją a dostawcą zdarzeń zostanie usunięte.
Oprócz nasłuchiwania zdarzeń za pomocą funkcji działającej w tle możesz wywoływać funkcje bezpośrednio za pomocą żądania HTTP lub wywołania z klienta. Możesz też aktywować funkcje według ustalonego harmonogramu lub dodawać funkcje zadań do kolejki za pomocą Admin SDK.
Ścieżka implementacji
| Skonfiguruj Cloud Functions | Zainstaluj Firebase CLI i zainicjuj Cloud Functions w projekcie Firebase. | |
| Napisz funkcje | Napisz kod w języku JavaScript, TypeScript lub Python aby obsługiwać zdarzenia z usług Firebase usług, Google Cloud usług lub innych dostawców zdarzeń. | |
| Przetestuj funkcje | Aby przetestować funkcje, użyj emulatora lokalnego. | |
| Wdróż i monitoruj | Uaktualnij projekt do planu taryfowego Blaze z płatnością według wykorzystania i wdróż funkcje za pomocą Firebase CLI. Następnie możesz użyć Google Cloud konsoli , aby wyświetlać i przeszukiwać logi. |
Dalsze kroki
- Zacznij konfigurować, tworzyć i wdrażać funkcje.
- Dowiedz się więcej o tym, co możesz zrobić za pomocą funkcji.
- Wypróbuj Cloud Functions ćwiczenie w Codelabs.