Serverless

Serverless bezeichnet ein Ausführungsmodell, bei dem Code in kurzlebigen, automatisch skalierten Funktionen läuft und Serververwaltung sowie Abrechnung vollständig vom Cloud-Anbieter übernommen werden.

Kurz erklärt

Trotz des Namens verschwinden bei Serverless keine Server - sie werden lediglich vollständig vom Cloud-Anbieter verwaltet und für den Nutzer unsichtbar gemacht. Statt einen dauerhaft laufenden VPS zu betreiben, schreibt man einzelne Funktionen, die der Anbieter bei Bedarf startet, ausführt und danach wieder vollständig beendet. Abgerechnet wird typischerweise nach tatsächlicher Ausführungszeit und Anzahl der Aufrufe, nicht nach fest gebuchter Serverzeit. “Serverless” ist dabei eher ein Betriebs- und Abrechnungsmodell als eine einzelne Technologie - neben klassischen Funktionen (Function as a Service) zählen inzwischen auch serverlose Container, Edge-Functions und ereignisgesteuerte, serverlose Datenbanken dazu, die alle nach demselben Grundprinzip abgerechnet werden.

Beispiel

Eine Funktion, die beim Hochladen eines Bildes automatisch eine verkleinerte Vorschauversion erzeugt, läuft bei jedem Upload kurz an, verarbeitet das Bild und wird danach wieder beendet - ohne dass dafür ein permanent laufender Server bereitstehen muss.

Warum ist das relevant?

Serverless eignet sich besonders für unregelmäßige oder stark schwankende Last, da keine Ressourcen für ungenutzte Zeit bezahlt werden müssen und die Skalierung automatisch erfolgt. Für dauerhaft hohe, gleichmäßige Last kann ein klassischer VPS oder ein Servermodell mit fest gebuchten Ressourcen dagegen wirtschaftlicher sein.

Häufige Missverständnisse

“Serverless” bedeutet nicht, dass keine Server involviert sind - der Begriff beschreibt lediglich, dass sich der Nutzer nicht um deren Verwaltung kümmern muss. Auch die Annahme, Serverless sei grundsätzlich günstiger als klassisches Hosting, stimmt nicht pauschal: Bei dauerhaft hoher Auslastung kann die nutzungsbasierte Abrechnung teurer ausfallen als ein fest gebuchter Server. Zudem führt der sogenannte Kaltstart - die kurze Verzögerung, bis eine länger nicht genutzte Funktion erneut bereitsteht - dazu, dass Serverless nicht für jede latenzkritische Anwendung gleichermaßen geeignet ist. Serverless wird zudem oft mit Platform as a Service verwechselt: Anders als eine Serverless-Funktion läuft eine PaaS-Anwendung meist dauerhaft oder über längere Zeiträume in einem laufenden Prozess, statt nur für die Dauer eines einzelnen Aufrufs zu existieren.

Weiterführende Inhalte