Cloud Functions für Firebase

Cloud Functions für Firebase ist ein serverloses Framework, mit dem Sie als Reaktion auf Ereignisse, die durch Hintergrundereignisse, HTTPS-Anfragen, das Admin SDK oder Cloud Scheduler Jobs ausgelöst werden, automatisch Back-End-Code ausführen können. Ihr JavaScript-, TypeScript- oder Python-Code wird in der Google Cloud-Infrastruktur gespeichert und in einer verwalteten Umgebung ausgeführt. Sie müssen keine eigenen Server verwalten und skalieren.

Erste Schritte Anwendungsfälle




Hauptmerkmale

Firebase-Funktionen integrieren und Firebase mit Google Cloud verbinden

Von Ihnen geschriebene Funktionen können auf Ereignisse reagieren, die von verschiedenen Firebase und Google Cloud Funktionen generiert wurden, von Firebase Authentication-Triggern bis hin zu Cloud Storage-Triggern.

Sie können das Admin SDK zusammen mit Cloud Functions in Firebase-Funktionen integrieren und mit externen Diensten interagieren, indem Sie eigene Webhooks schreiben. Cloud Functions minimiert den Standardcode, sodass Firebase und Google Cloud einfacher in Ihrer Funktion verwendet werden können.
Keinerlei Wartung erforderlich Stellen Sie Ihren JavaScript-, TypeScript- oder Python-Code mit einem Befehl über die Befehlszeile auf unseren Servern bereit. Danach skaliert Firebase automatisch Computing-Ressourcen hoch, um sich an die Nutzungsmuster Ihrer Nutzer anzupassen. Sie müssen sich keine Gedanken über Zugangsdaten, Serverkonfiguration, das Deployment von neuen Servern oder die Stilllegung von alten machen.
Hält Ihre Logik privat und sicher In vielen Fällen steuern Entwickler die Anwendungslogik lieber auf dem Server, um Manipulationen über den Client zu vermeiden. Außerdem ist es manchmal nicht empfehlenswert, das Reverse Engineering des Codes zuzulassen. Cloud Functions ist vom Client völlig isoliert, sodass Sie sich sicher sein können, dass es privat ist und immer genau das tut, was Sie wollen.

Funktionsweise

Nachdem Sie eine Funktion geschrieben und bereitgestellt haben, wird sie sofort von den Google-Servern verwaltet. Sie können die Funktion direkt mit einer HTTP-Anfrage, dem Admin SDK, oder einem geplanten Job auslösen. Bei Hintergrundfunktionen warten die Google-Server auf Ereignisse und führen die Funktion aus, wenn sie ausgelöst wird.

Wenn die Last steigt oder sinkt, reagiert Google schnell, indem die Anzahl der virtuellen Serverinstanzen skaliert wird, die zum Ausführen Ihrer Funktion erforderlich sind. Jede Funktion wird isoliert in einer eigenen Umgebung mit eigener Konfiguration ausgeführt.

Lebenszyklus einer Hintergrundfunktion

  1. Sie schreiben Code für eine neue Funktion, wählen einen Ereignisanbieter aus (z. B. Cloud Firestore) und definieren die Bedingungen, unter denen die Funktion ausgeführt werden soll.
  2. Wenn Sie Ihre Funktion bereitstellen:
    1. Die Firebase CLI erstellt ein .zip Archiv des Funktionscodes, das in einen Cloud Storage Bucket hochgeladen wird (mit dem Präfix gcf-sources), bevor Cloud Functions ein Artifact Registry Repository (gcf-artifacts) in Ihrem Projekt erstellt.
    2. Cloud Build ruft den Funktionscode ab und erstellt die Funktion quelle. Sie können Cloud Build Logs in der Google Cloud Konsole ansehen.
    3. Das Container-Image für den erstellten Funktionscode wird in ein privates Artifact Registry Repository in Ihrem Projekt (benannt gcf-artifacts) hochgeladen und Ihre neue Funktion wird eingeführt.
  3. Wenn der Ereignisanbieter ein Ereignis generiert, das den Bedingungen der Funktion entspricht, wird der Code aufgerufen. Der Funktion ist ein Dienstkonto zugeordnet, mit dem über das Firebase Admin SDK auf andere Firebase-Dienste zugegriffen werden kann.
  4. Wenn die Funktion viele Ereignisse verarbeitet, erstellt Google weitere Instanzen, um die Arbeit schneller zu erledigen. Wenn die Funktion im Leerlauf ist, werden Instanzen bereinigt.
  5. Wenn Sie die Funktion aktualisieren, indem Sie aktualisierten Code bereitstellen, werden Instanzen für ältere Versionen zusammen mit Build-Artefakten in Artifact Registry bereinigt und durch neue Instanzen ersetzt.
  6. Wenn Sie die Funktion löschen, werden alle Instanzen und ZIP-Archive sowie die zugehörigen Build-Artefakte in Artifact Registry bereinigt. Die Verbindung zwischen der Funktion und dem Ereignisanbieter wird entfernt.

Neben dem Abhören von Ereignissen mit einer Hintergrundfunktion können Sie Funktionen auch direkt mit einer HTTP-Anfrage oder einem Aufruf vom Client aus aufrufen. Sie können Funktionen auch nach einem festen Zeitplan auslösen oder Aufgabenfunktionen in die Warteschlange stellen über das Admin SDK.

Vorgehensweise bei der Implementierung

Cloud Functions einrichten Installieren Sie die Firebase CLI und initialisieren Sie Cloud Functions in Ihrem Firebase-Projekt.
Funktionen schreiben Schreiben Sie JavaScript-, TypeScript- oder Python-Code , um Ereignisse von Firebase -Diensten, Google Cloud -Diensten oder anderen Ereignisanbietern zu verarbeiten.
Funktionen testen Verwenden Sie den lokalen Emulator zum Testen Ihrer Funktionen.
Bereitstellen und überwachen Aktualisieren Sie Ihr Projekt auf das Blaze-Preismodell (Pay as you go) und stellen Sie Ihre Functions mit der Firebase CLI bereit. Anschließend können Sie die Google Cloud Console verwenden, um Ihre Logs anzusehen und zu durchsuchen.

Nächste Schritte