API Gateway
Zentrale Laufzeitkomponente, die Client-Anfragen bündelt, absichert, transformiert und an Backend-Services weiterleitet.
Klassifikation
- KomplexitätMittel
- AuswirkungTechnisch
- EntscheidungstypArchitektur
- OrganisationsreifeFortgeschritten
Technischer Kontext
Prinzipien & Ziele
Use Cases & Szenarien
Kompromisse
- Überlastung des Gateways beeinflusst alle Clients
- Fehlkonfiguration kann Sicherheitslücken öffnen
- Zu starke Logik im Gateway führt zu Monolithisierung
- Keep gateways slim: Logik, die ins Backend gehört, dort belassen
- Automatisiertes Testing und Canary-Rollouts
- Zentrales Monitoring und strukturierte Alerts
I/O & Ressourcen
- Definition der API-Endpunkte und Contracts
- Sicherheits- und Authentifizierungsanforderungen
- Monitoring- und Observability-Tools
- Gesteuerte und abgesicherte API-Zugänge
- Metriken, Logs und Traces für den Betrieb
- Reduzierte Kopplung zwischen Clients und Backends
Beschreibung
Ein API Gateway ist eine zentrale Laufzeitkomponente, die Client-Anfragen annimmt, autentifiziert, autorisiert, weiterleitet und ggf. transformiert. Es kapselt Backend-Services, konsolidiert Schnittstellen, ermöglicht Rate-Limiting, Monitoring und Protokollübersetzung. Gateways spielen eine zentrale Rolle in verteilten Architekturen und beeinflussen Performance, Resilienz und Betriebskosten.
✔Vorteile
- Reduzierte Kopplung zwischen Clients und Backends
- Zentrale Umsetzung von Sicherheits- und Ratelimit-Richtlinien
- Verbesserte Observability und Monitoring-Punkte
✖Limitationen
- Single Point of Failure ohne geeignete Redundanz
- Zusätzliche Latenz durch Routing und Transformation
- Komplexität bei Versionierung und Migrationspfaden
Trade-offs
Metriken
- Anfragen pro Sekunde
Messung des Durchsatzes, wichtig zur Kapazitätsplanung.
- P95/P99 Latenz
Latenz-Perzentile zur Überwachung der Performance-SLAs.
- Fehlerquote
Anteil fehlerhafter Antworten, wichtig für Resilienzmetriken.
Beispiele & Implementierungen
Unternehmens-API-Portal
Zentrales Gateway, das externe Partneranfragen authentifiziert, limitiert und an interne Microservices weiterleitet.
Mobile Backend Aggregation
Gateway aggregiert mehrere Backend-Aufrufe zu einer einzigen, optimierten API für mobile Clients.
Legacy-Adapter
Gateway bietet Übersetzer für alte SOAP-Services und stellt moderne REST-Endpunkte bereit.
Implementierungsschritte
Anforderungsanalyse und Schnittstellendefinition
Prototyping mit minimaler Routing- und Authentifizierungsfunktionalität
Staging-Rollout, Lasttests und schrittweises Produktions-Routing
⚠️ Technische Schulden & Engpässe
Tech Debt
- Ad-hoc-Policies ohne Dokumentation
- Hardcodierte Routen statt konfigurierbarer Regeln
- Fehlende Automatisierung für Zertifikatsrotation
Bekannte Engpässe
Beispiele für Missbrauch
- Verschieben von Service-Integrationstasks ins Gateway statt in die Services
- Verlassen auf Gateway-spezifische proprietäre Features ohne Abstraktion
- Unkontrolliertes Hinzufügen von Transformationsregeln ohne Tests
Typische Fallen
- Unterschätzung des Betriebsaufwands für Sicherheitszertifikate
- Fehlende Kapazitätsplanung für Peak-Lasten
- Versteckte Kosten durch hohe Durchsatzanforderungen
Erforderliche Fähigkeiten
Drivers (Architectural Drivers)
Constraints
- • Netzwerk-Latenz und Bandbreitenlimits
- • Kompatibilität mit bestehenden Authentifizierungsmechanismen
- • Regulatorische Anforderungen an Logging und Datenschutz