Serverless – auch Serverless Computing genannt – ist ein Cloud-Computing-Modell, bei dem der Cloud-Anbieter die gesamte Server-Infrastruktur verwaltet. Entwickler schreiben nur den Code; Bereitstellung, Skalierung und Wartung der Server entfallen komplett.
Wie funktioniert Serverless?
Beim Serverless-Ansatz wird Code als einzelne Funktionen (Functions) bereitgestellt. Diese Funktionen werden nur dann ausgeführt, wenn sie durch ein Ereignis ausgelöst werden – etwa eine HTTP-Anfrage, einen Datei-Upload oder einen Timer. Nach der Ausführung wird die Funktion beendet und verbraucht keine Ressourcen.
Dieses Modell wird auch als Function-as-a-Service (FaaS) bezeichnet. Die Abrechnung erfolgt pro Ausführung, nicht pro Betriebsstunde – ein enormer Kostenvorteil bei unregelmäßiger Nutzung.
Vorteile von Serverless
- Keine Server-Verwaltung: Kein Patching, kein Monitoring, keine Kapazitätsplanung
- Automatische Skalierung: Von null auf tausende gleichzeitige Anfragen
- Pay-per-Use: Kosten nur bei tatsächlicher Nutzung
- Schnelle Bereitstellung: Funktionen in Sekunden deployen
- Fokus auf Code: Entwickler konzentrieren sich auf Geschäftslogik
Serverless im Jamstack
In der Jamstack-Architektur sind Serverless Functions ein zentraler Baustein. Sie ermöglichen Backend-Logik ohne eigenen Server: Kontaktformulare verarbeiten, APIs aggregieren, Authentifizierung durchführen oder Datenbanken abfragen.
Next.js integriert Serverless Functions nahtlos über Route Handlers. Jede API-Route wird automatisch als Serverless Function deployt – besonders auf Hosting-Plattformen wie Vercel.
Typische Einsatzgebiete
- Formularverarbeitung: Kontaktformulare ohne eigenen Backend-Server
- Bildverarbeitung: Automatische Optimierung hochgeladener Bilder
- E-Mail-Versand: Transaktionale E-Mails bei Bestellungen oder Registrierungen
- Webhooks: Reaktion auf Ereignisse externer Dienste
- Cron Jobs: Geplante Aufgaben wie Datenbereinigung oder Report-Generierung
Serverless und Hosting
Serverless verändert das traditionelle Hosting-Modell grundlegend. Statt einen Server dauerhaft zu betreiben, werden statische Dateien über ein CDN ausgeliefert und dynamische Funktionen nur bei Bedarf ausgeführt. Das Ergebnis: geringere Kosten, höhere Verfügbarkeit und bessere Performance.
Grenzen von Serverless
Serverless hat auch Einschränkungen: Cold Starts können die erste Anfrage verzögern, Ausführungszeiten sind begrenzt (typisch 10-30 Sekunden), und für zustandsbehaftete Anwendungen sind zusätzliche Dienste wie Datenbanken nötig. Für die meisten Webprojekte überwiegen jedoch die Vorteile deutlich.