„Serverless“ klingt erstmal nach Magie: Code hochladen, fertig. Kein Server, keine Infrastruktur, keine Wartung. Natürlich laufen auch bei Serverless Anwendungen auf Servern – der Unterschied ist: Du musst dich nicht mehr darum kümmern.
In diesem Beitrag erfährst du:
- Was Serverless Computing genau ist
- Welche Vorteile (und Grenzen) es hat
- Welche Anbieter & Dienste es gibt
- Und wann sich Serverless wirklich lohnt
Was ist Serverless Computing?
Serverless ist ein Cloud-Bereitstellungsmodell, bei dem du nur deinen Code bereitstellst, ohne dich um Infrastruktur, Serverbetrieb, Betriebssysteme oder Skalierung kümmern zu müssen.
Die Cloud-Plattform:
- verwaltet die Ausführung
- skaliert automatisch
- überwacht & sichert Ressourcen
- und rechnet nur für tatsächliche Nutzung ab (z. B. Funktionsaufrufe in Millisekunden)
Serverless ≠ keine Server
Der Begriff „serverless“ ist irreführend, denn natürlich laufen auch diese Anwendungen auf Servern – nur:
- Die Server sind für dich unsichtbar
- Du musst sie nicht konfigurieren, patchen oder verwalten
- Du zahlst keine Leerlaufzeit
Vorteile von Serverless
Vorteil | Beschreibung |
---|---|
Keine Serververwaltung | Kein Setup, kein Patchen, kein OS – Fokus auf den Code |
Auto-Scaling eingebaut | Skalierung passiert automatisch, je nach Last |
Ereignisgesteuert | Funktionen werden durch Events ausgelöst (z. B. HTTP-Call) |
Kosteneffizienz | Nur zahlen, wenn wirklich etwas ausgeführt wird |
Schnelles Prototyping | Ideal für MVPs, Microservices, APIs |
Grenzen & Nachteile
Einschränkung | Beschreibung |
---|---|
Cold Starts | Verzögerung beim ersten Aufruf nach Leerlauf |
Kurzlebige Ausführungen | Maximale Laufzeit meist begrenzt (z. B. 15 Min bei AWS) |
Kein persistenter Zustand | Keine dauerhafte Verbindung oder lokale Datenhaltung |
Komplexität bei vielen Funktionen | Schwer zu debuggen, wenn App aus vielen Funktionen besteht |
Vendor Lock-in | Dienste sind oft sehr an den jeweiligen Cloud-Anbieter gebunden |
Serverless-Dienste der großen Anbieter
AWS Lambda
- Marktführer im Serverless-Bereich
- Unterstützt viele Sprachen: Node.js, Python, Go, Java, .NET, Ruby, etc.
- Integrierbar mit über 200 AWS-Diensten
- Trigger: HTTP (via API Gateway), S3-Upload, DynamoDB, SNS, etc.
- 1 Mio. Ausführungen/Monat kostenlos im Free Tier
Beispiel:
def lambda_handler(event, context):
return {"statusCode": 200, "body": "Hello from AWS Lambda!"}
Azure Functions
- Gut in Microsoft-Ökosystem integriert (Azure DevOps, GitHub, Logic Apps)
- Trigger: HTTP, Timer, Queue, Blob Storage, etc.
- Unterstützung für PowerShell, C#, Python, Java, JavaScript
Beispiel:
module.exports = async function (context, req) {
context.res = { status: 200, body: "Hello from Azure Functions!" };
};
Google Cloud Functions
- Minimalistischer Ansatz, ideal für einfache Dienste
- Trigger: HTTP, Pub/Sub, Cloud Storage, Firestore, etc.
- Gut integriert mit Firebase, GCP Monitoring und Google AI
Beispiel:
exports.helloWorld = (req, res) => {
res.send('Hello from GCP!');
};
Typische Einsatzszenarien
Szenario | Beschreibung |
---|---|
HTTP-API / REST-Endpoints | Schnelle Erstellung von Endpunkten für Web & Mobile Apps |
Webhook-Verarbeitung | Z. B. Stripe oder GitHub Webhooks empfangen und verarbeiten |
Bild- & Dateiverarbeitung | Beim Upload automatisch Thumbnails, PDFs, o. ä. erzeugen |
Scheduler / Cronjobs | Funktionen regelmäßig ausführen lassen (z. B. Berichte) |
IoT / Event-basierte Verarbeitung | Eingehende Nachrichten direkt verarbeiten |
Beispiel: Serverless-API mit AWS Lambda + API Gateway
- Lambda-Funktion mit Python schreiben
- API Gateway erstellen (REST oder HTTP)
- Lambda mit dem API Gateway verbinden
- Deployen → API ist sofort öffentlich erreichbar
Ergebnis:
- Keine VMs
- Keine Container
- Keine Wartung
Kosten: Wann ist Serverless günstiger?
Kriterium | Serverless | VM / Container |
---|---|---|
Idle-Zeit | 0 € | Du zahlst weiter |
Skalierung | Automatisch | Manuell oder mit Aufwand |
Traffic-basierte Apps (z. B. Webhooks) | Sehr günstig | VMs oft überdimensioniert |
Dauerhafte Dienste (z. B. Datenbanken) | Nicht geeignet | VMs oder PaaS besser |
Wann lohnt sich Serverless?
Serverless eignet sich besonders für:
- Kleine bis mittlere Webservices und APIs
- Event-basierte Workloads
- Start-ups & MVPs mit begrenztem Budget
- Automatisierung von Prozessen
- Entwickler:innen ohne DevOps-Team
Weniger geeignet für:
- Langlaufende Prozesse
- Heavy Lifting (z. B. große ML-Trainings)
- Systeme mit hohem Bedarf an Low Latency
Vergleich: Lambda vs. Azure Functions vs. GCP Functions
Merkmal | AWS Lambda | Azure Functions | GCP Functions |
---|---|---|---|
Max. Laufzeit | 15 Minuten | 5 Minuten (Standard), verlängerbar | 9 Minuten |
Sprache | Viele (Python, Go, Java, etc.) | Besonders gut mit C# | JavaScript, Python, Go |
Free Tier | 1 Mio Aufrufe/Monat | 1 Mio Aufrufe/Monat | 2 Mio Aufrufe/Monat |
Einstiegshürde | Mittel (IAM, API Gateway) | Gut für Microsoft-Teams | Sehr niedrig |
Fazit
Serverless Computing verändert, wie wir über Infrastruktur denken.
Es erlaubt dir, dich voll auf den Code zu konzentrieren – ohne Server, ohne OS, ohne Patching. Ideal für skalierbare, kosteneffiziente Anwendungen, bei denen Flexibilität und Geschwindigkeit gefragt sind.
Schreibe einen Kommentar