Serverless Computing: Definition & Erklärung — Glossar
Was ist Serverless Computing?
Serverless Computing (dt. serverloser Ansatz) ist ein Cloud-Ausführungsmodell, bei dem Entwickler Code bereitstellen, ohne sich um die zugrundeliegende Serverinfrastruktur zu kümmern. Der Cloud-Anbieter verwaltet automatisch Provisionierung, Skalierung und Betrieb. Abgerechnet wird ausschließlich die tatsächliche Ausführungszeit — nicht für bereitstehende, aber inaktive Server.
Function as a Service (FaaS)
Der bekannteste Serverless-Ansatz ist FaaS: Einzelne Funktionen werden als eigenständige, zustandslose Einheiten deployed und auf Ereignisse (HTTP-Anfragen, Queue-Messages, Zeitpläne) hin ausgeführt. AWS Lambda, Azure Functions und Google Cloud Functions sind die führenden FaaS-Plattformen. Eine Lambda-Funktion skaliert automatisch von 0 auf Millionen parallele Ausführungen und kostet bei Inaktivität nichts.
Vorteile
Keine Server-Administration: Kein Patch Management, kein Capacity Planning, kein Betriebsaufwand. Pay-per-Use: Ideal für sporadische oder stark schwankende Workloads — keine Kosten für Idle-Zeit. Automatisches Scaling: Von 0 auf unbegrenzt in Millisekunden. Schnellere Entwicklung: Fokus auf Funktionalität, nicht Infrastruktur. Event-getriebene Architektur wird natürlich unterstützt.
Grenzen und Cold Start
Cold Start: Nach Inaktivität braucht eine Serverless-Funktion beim ersten Aufruf zusätzliche Startzeit (100 ms bis mehrere Sekunden). Für latenzempfindliche Anwendungen kann das problematisch sein. Maximale Ausführungszeiten (z. B. 15 Minuten bei AWS Lambda) schränken langläufige Prozesse ein. Debugging und Tracing verteilter Serverless-Anwendungen ist komplexer als bei monolithischen Systemen.