Wie FaaS technisch arbeitet
Bei FaaS wird Anwendungslogik in kleine, separat bereitgestellte Funktionen aufgeteilt. Eine Funktion startet erst, wenn ein Auslöser eintritt, etwa ein HTTP-Aufruf, eine Nachricht in einer Queue, ein Datei-Upload oder ein Zeitplan. Die Ausführung erfolgt typischerweise in kurzlebigen Laufzeitumgebungen. Zustände und Datenhaltung liegen deshalb meist ausserhalb der Funktion, zum Beispiel in Datenbanken, Objektspeichern oder Messaging-Diensten.
Typische Einsatzszenarien für ereignisgesteuerte Funktionen
FaaS eignet sich für einzelne Verarbeitungsschritte mit klaren Ein- und Ausgaben. Dazu gehören API-Endpunkte, Webhook-Verarbeitung, Validierung eingehender Daten, Bild- und Dateikonvertierung, Benachrichtigungen, Protokollauswertung oder Integrationslogik zwischen Systemen. Auch zeitgesteuerte Aufgaben wie Bereinigungen, Synchronisationen oder periodische Reports werden häufig als Funktionen umgesetzt. Weniger passend ist FaaS für lang laufende Prozesse mit stabiler Dauerlast oder für Anwendungen mit starkem Bedarf an lokaler Zustandsverwaltung.
Ausprägungen und betriebliche Rahmenbedingungen
FaaS-Umgebungen unterscheiden sich unter anderem bei den unterstützten Programmiersprachen, Auslösern, Sicherheitsmodellen und Integrationen in andere Cloud-Dienste. Häufig werden Funktionen über HTTP, Event-Busse, Queues oder Speicherereignisse gestartet. Im Betrieb sind Themen wie Ausführungsdauer, Parallelität, Rechtevergabe, Logging, Monitoring und verteiltes Debugging relevant. Auch Startverhalten nach Inaktivität, Abhängigkeiten zu verwalteten Diensten und die Strukturierung mehrerer Funktionen zu vollständigen Abläufen müssen architektonisch berücksichtigt werden.
Abgrenzung zu IaaS, PaaS und SaaS
Innerhalb der Cloud-Hierarchie steht FaaS neben anderen Servicemodellen, deckt aber einen engeren technischen Ausschnitt ab. Im Unterschied zu Infrastructure as a Service (IaaS) verwaltet der Kunde keine virtuellen Maschinen oder Netzwerkinstanzen für die Ausführung einzelner Funktionen. Gegenüber Platform as a Service (PaaS) ist FaaS feiner granuliert und stärker auf ereignisgesteuerte, kurzlebige Ausführung ausgelegt statt auf den Betrieb kompletter Anwendungen. Von Software as a Service (SaaS) unterscheidet sich FaaS grundlegend, weil keine fertige Fachanwendung genutzt wird, sondern eigene Logik in einer Cloud-Umgebung bereitgestellt wird.