Cloud Functions – Übersicht

Was ist Google Cloud Functions?

Google Cloud Functions ist eine serverlose Ausführungsumgebung zum Erstellen und Verbinden von Clouddiensten. Mit Cloud Functions schreiben Sie einfache Funktionen, die einem einzigen Zweck dienen und an Ereignisse gebunden sind, die von Ihrer Cloudinfrastruktur und Ihren Diensten ausgegeben werden. Die Funktion wird ausgelöst, wenn ein beobachtetes Ereignis ausgelöst wird. Ihr Code wird in einer vollständig verwalteten Umgebung ausgeführt. Sie müssen weder eine Infrastruktur bereitstellen noch irgendwelche Server verwalten.

Cloud Functions-Funktionen können mit JavaScript-, Python 3-, Go- oder Java-Laufzeiten in der Google Cloud Platform geschrieben werden. Sie können Ihre Funktion in jeder Standardumgebung von Node.js (Node.js 10 oder 12), Python 3 (Python 3.7 oder 3.8), Go (Go 1.11 oder 1.13) oder Java (Java 11) ausführen. Das sorgt für Portabilität und vereinfacht lokales Testen.

Cloud-Dienste verbinden und erweitern

Cloud Functions bietet eine logische Verbindungsschicht, über die Sie Code zum Verbinden und Erweitern von Clouddiensten schreiben können. Sie können überwachen, ob eine Datei in Cloud Storage hochgeladen wird, es Änderungen an einem Log gibt oder eine Nachricht zu einem Pub/Sub-Thema eingeht, und auf solche Ereignisse reagieren. Cloud Functions ergänzt bestehende Clouddienste und ermöglicht es Ihnen, für eine größere Zahl von Anwendungsfällen mit beliebiger Programmierlogik gewappnet zu sein. Cloud Functions-Funktionen haben Zugriff auf die Anmeldedaten des Google-Dienstkontos und sind somit nahtlos mit den meisten Google Cloud-Diensten authentifiziert, einschließlich Cloud Vision und vielen anderen. Darüber hinaus wird Cloud Functions von vielen Google Cloud-Clientbibliotheken unterstützt, die diese Integrationen weiter vereinfachen.

Ereignisse und Trigger

In Ihrer Cloudumgebung gibt es Cloudereignisse. Dabei kann es sich beispielsweise um Änderungen an Daten in einer Datenbank, zu einem Speichersystem hinzugefügte Dateien oder eine neu erstellte Instanz einer virtuellen Maschine handeln.

Ereignisse geschehen, ob Sie darauf reagieren möchten oder nicht. Mit einem Trigger können Sie eine Reaktion auf ein Ereignis erstellen. Sie geben damit an, dass Sie an einem bestimmten Ereignis oder an einer Reihe von Ereignissen interessiert sind. Wenn Sie eine Funktion an einen Trigger binden, können Sie Ereignisse erfassen und darauf reagieren. Weitere Informationen zum Erstellen von Triggern und ihrer Zuordnung zu Funktionen finden Sie unter Ereignisse und Trigger.

Serverlos

Mit Cloud Functions wird es überflüssig, Server zu verwalten, Software zu konfigurieren, Frameworks zu aktualisieren und Betriebssysteme zu patchen. Software und Infrastruktur werden vollständig von Google verwaltet, sodass Sie nur Code hinzufügen müssen. Außerdem werden Ressourcen automatisch als Reaktion auf Ereignisse bereitgestellt. Das bedeutet, dass eine Funktion sich ohne jegliches Eingreifen Ihrerseits von wenigen Aufrufen pro Tag bis zu vielen Millionen Aufrufen skalieren lässt.

Anwendungsfälle

Für asynchrone Arbeitslasten wie einfache ETL-Vorgänge oder Cloud-Automatisierungen wie das Auslösen von Anwendungs-Build-Prozessen werden keine eigenen Server und keine Entwickler mehr benötigt. Sie stellen einfach eine Funktion bereit, die an das gewünschte Ereignis gebunden ist.

Cloud Functions ist fein abgestimmt und bedarfsgesteuert und damit auch ideal für einfache APIs und Webhooks geeignet. Außerdem werden HTTP-Endpunkte beim Implementieren einer HTTP-Funktion automatisch bereitgestellt, sodass im Gegensatz zu einigen anderen Diensten keine komplizierte Konfiguration erforderlich ist. Weitere häufige Anwendungsfälle für Cloud Functions finden Sie in der folgenden Tabelle.

Anwendungsfall Beschreibung
Datenverarbeitung/ETL Prüfen Sie, ob Cloud Storage-Ereignisse wie das Erstellen, Ändern oder Entfernen einer Datei eintreten, und reagieren Sie darauf. Sie können mit Cloud Functions Bilder verarbeiten, Videos transcodieren, Dateien validieren und transformieren sowie beliebige Onlinedienste aufrufen.
WebHooks Über einen einfachen HTTP-Trigger reagieren Sie auf Ereignisse, die von Drittanbietersystemen wie GitHub, Slack, Stripe oder anderen Quellen, die HTTP-Anfragen senden, ausgelöst werden.
Schlanke APIs Entwickeln Sie Anwendungen aus schlanken, lose miteinander verknüpften Logikelementen, die sich schnell erstellen und sofort skalieren lassen. Es kann sich dabei um ereignisgesteuerte oder direkt über HTTP/S aufgerufene Funktionen handeln.
Mobiles Back-End Nutzen Sie Firebase, die mobile Google-Plattform für Anwendungsentwickler, und schreiben Sie Ihr mobiles Back-End in Cloud Functions. Prüfen Sie auf Ereignisse aus Firebase Analytics, Realtime Database, Authentication und Storage und reagieren Sie darauf.
IoT Stellen Sie sich vor, wie Zehn- oder Hunderttausende von Geräten Daten in Pub/Sub streamen und damit Cloud Functions-Funktionen zum Verarbeiten, Transformieren und Speichern von Daten starten. Mit Cloud Functions ist dies komplett serverlos möglich.

Weitere Informationen