API-Gateway
Ein API-Gateway ist eine Anwendung, die vor einer Programmierschnittstelle sitzt und für eine definierte Gruppe von Microservices als Single Point of Entry fungiert.
Da ein Gateway Protokollübersetzungen durchführt, ist diese Art der Frontend-System besonders nützlich, wenn Clients, die mit Microservices erstellt wurden, mehrere unterschiedliche Programmierschnittstellen (Application Programming Interfaces, APIs) verwenden.
Ein großer Vorteil von API-Gateways besteht darin, dass Entwickler mit ihnen die interne Struktur einer Anwendung je nach Anwendungsfall auf unterschiedliche Art einkapseln können. Dies liegt daran, dass Gateways nicht nur direkte Anfragen entgegennehmen, sondern auch mehrere Backend-Dienste aufrufen und die Ergebnisse aggregieren können.
Da Entwickler das API-Gateway jedes Mal aktualisieren müssen, wenn sie einen neuen Microservice hinzufügen oder entfernen, ist es wichtig, dass der Prozess zur Aktualisierung von Gateways so einfach wie möglich ist. Wenn es darum geht, sich für oder gegen einen Anbieter von Microservices zu entscheiden, ist es demnach wichtig, dass Entwickler überprüfen, wie diese Aktualisierung umgesetzt ist.
Zu den beliebten API-Gateway-Funktionen gehören neben dem Zugang zu Microservices auch Funktionen wie
- Authentifizierung
- Durchsetzen von Sicherheitsrichtlinien
- Load Balancing
- Cache-Verwaltung
- Auflösung von Abhängigkeiten
- Verwaltung von Verträgen und Service Level Agreements (SLA)