Definition

Google Cloud Functions

Google Cloud Functions ist ein serverloser, ereignisgesteuerter Computing-Service innerhalb der Google Cloud Platform. Entwickler können damit programmatische Funktionen innerhalb der Public Cloud von Google erstellen und implementieren, ohne die zugrunde liegende Cloud-Infrastruktur wie Server, Speicher und andere Ressourcen bereitstellen zu müssen.

Google Cloud Functions ermöglicht es kleinen Codesegmenten, spezifische, begrenzte Aufgaben auszuführen, die typischerweise mit dem Auslösen von Reaktionen auf reale und softwaregesteuerte Ereignisse verbunden sind. Wenn ein Ereignis eine zugehörige Funktion auslöst, wird die Funktion in eine bereitgestellte Cloud-Umgebung geladen und ausgeführt. Alle Infrastrukturressourcen werden von Google Cloud Platform (GCP) automatisch bereitgestellt und wiederhergestellt.

Sobald der Code der Funktion ausgeführt wird, werden die Funktion und die zugehörigen Ressourcen verworfen. Folglich werden Cloud-Functions-Dienste pro Funktion und nicht nach den verwendeten Cloud-Ressourcen abgerechnet.

Hauptmerkmale von Google Cloud Functions

Wie bei allen Serverless-Angeboten steht bei Google Cloud Functions der einfache Zugang im Vordergrund. Da der Dienst die zugrunde liegende Infrastruktur abstrahiert und automatisiert, können sich die Nutzer auf die Erstellung von Funktionscode konzentrieren, anstatt eine Cloud-Infrastruktur aufzubauen.

Google Cloud Functions unterstreicht außerdem die Idee der Skalierbarkeit. Um niedrige Leistung und hohe Kosten zu vermeiden, skaliert der Dienst die Ressourcen automatisch nach oben und unten, je nach Funktionsnachfrage.

serverlose Funktionen
Abbildung 1: Die Grenzen von Serverless-Funktionen.

Verschiedene Quellen innerhalb und außerhalb von Google Cloud Platform können Funktionen auslösen. Zum Beispiel kann eine Anwendung, die auf GCP läuft, oder Dienste wie Firebase und Google Assistant eine Funktion auslösen. HTTP-Hooks von Web-, Mobil- und Backend-Anwendungen können ebenfalls Funktionen initiieren. So können Google Cloud Functions auf programmatische und Echtzeit-/Echtwelt-Ereignisse reagieren. Beispielsweise können Funktionen aufgerufen werden, um von IoT-Geräten generierte Daten umzuwandeln und zu verschieben oder um Daten zu verarbeiten, wenn eine Änderung – wie das Hinzufügen eines Objekts – in einer Cloud-Speicherinstanz auftritt.

Google Cloud Functions verwendet konventionelle Programmiersprachen, darunter JavaScript (Node.js) und Python. Entwickler, die bereits mit Java und Python vertraut sind, können schnell mit der Entwicklung und dem Hochladen von Funktionen beginnen.

Anwendung von Google Cloud Functions

Ein Unternehmen kann Google Cloud Functions auf vielfältige Weise nutzen. Ein Beispiel ist das Auslösen einer Protokollanalyse. In diesem Szenario kann eine Funktion nach bestimmten Ereignissen, wie etwa einem Fehler, innerhalb anderer Cloud-Dienste oder Anwendungen suchen, eine Überprüfung der Protokolldateien auslösen und gewünschte Protokolleinträge über einen Benachrichtigungsdienst an bestimmte Administratoren oder Entwickler senden.

Funktionen können auch andere Aufgaben auslösen, wie zum Beispiel Backups. Eine Funktion kann beispielsweise eine Datensicherung auslösen, wenn eine bestimmte Zeitspanne verstrichen ist oder wenn ein anderes Ereignis eingetreten ist, wenn etwa eine wichtige Ressource für eine bestimmte Zeitspanne nicht genutzt wurde. Funktionen können auch andere Aktionen auslösen, beispielsweise die Erstellung von Berichten.

Unternehmen verwenden Funktionen häufig, um regelmäßige oder redundante Aufgaben durchzuführen, zum Beispiel die Verarbeitung von Bilddateien. So kann beispielsweise ein neues Bild, das in einer Cloud-Speicherinstanz gespeichert wird, eine Funktion zur Farbanpassung, Skalierung und Speicherung der verarbeiteten Bilddatei auslösen. Eine Funktion kann auch aufgerufen werden, um einen neuen Datensatz zu normalisieren, bevor eine Kopie der Daten von einer Speicherressource in ein anderes Tool, zum Beispiel eine Cloud-Datenbank oder einen Big-Data-Analysedienst, zur weiteren Verarbeitung übertragen wird.

Preisgestaltung und Wettbewerber

Die Preisgestaltung von Google Cloud Functions basiert auf mehreren Faktoren, darunter die Anzahl der Anfragen sowie der Wert der genutzten Speicher-, Prozessor- und Netzwerkdatenressourcen, während die Funktion ausgeführt wird. Nutzer von Google Cloud Functions können den Dienst auch kostenlos testen: die ersten zwei Millionen Aufrufe pro Monat sind kostenlos.

Ingress-Daten sowie Outbound-Daten zu Google-APIs in derselben Region sind ebenfalls kostenlos. GCP bietet einen Preisrechner, mit dem Nutzer die Kosten für eine Funktion ungefähr abschätzen können.

Google Cloud Functions konkurriert mit serverlosen Plattformen wie Microsoft Azure Functions und AWS Lambda.

Diese Definition wurde zuletzt im August 2021 aktualisiert

Erfahren Sie mehr über Cloud Computing