Spring API Gateway

09/29/2018 11:30 HoLdY.#1
Hi Leute,

ich hätte mal eine Frage und bin mir nicht sicher ob ich hier so überhaupt richtig bin. Aktuell habe ich 5 Microservices die in Spring geschrieben wurden und über Keycloak geschützt werden. Die Microservices benutzen Messaging (RabbitMQ) um ihre Daten aktuell zuhalten weil eine Entität von allen MS gehalten wird. Momentan habe ich alles über Docker in meiner Programmierumgebung deployt, ich wollte das ganze aber bald auf einen Server ziehen, damit ich das Frontend auf einem Handy programmieren & testen kann. Vorher wollte ich mich jedoch in API Gateways einarbeiten damit nicht jeder MS mit Keycloak kommunizieren muss sondern nur das API Gateway, gibt es dafür eventuell schon fertige Lösungen die soetwas könnten?´
Könnt Ihr mir zur Lösungen empfehlen?

MFG
06/26/2023 13:29 Tanad#2
Ja, es gibt verschiedene Lösungen für API Gateways, die dir dabei helfen können, die Kommunikation zwischen deinen Microservices und Keycloak zu vereinfachen. Hier sind einige beliebte Optionen:

Netflix Zuul: Zuul ist ein leistungsfähiges API Gateway, das Teil des Netflix-Stacks ist. Es bietet Routing, Load Balancing, Caching und Sicherheitsfunktionen. Du kannst Zuul verwenden, um die Kommunikation zwischen deinen Microservices und Keycloak zu verwalten.

Kong: Kong ist ein Open-Source-API-Gateway, das auf Nginx basiert. Es bietet viele erweiterbare Funktionen wie Authentifizierung, Rate Limiting und Logging. Kong kann als Reverse Proxy fungieren und die Kommunikation mit Keycloak für deine Microservices zentralisieren.

Spring Cloud Gateway: Spring Cloud Gateway ist eine Lösung von Spring, die speziell für Microservices entwickelt wurde. Es bietet Routing, Filterung und Sicherheitsfunktionen. Du kannst Spring Cloud Gateway verwenden, um die Anfragen an deine Microservices zu steuern und die Kommunikation mit Keycloak zu vereinfachen.

Diese Lösungen können als Zwischenschicht zwischen deinen Microservices und Keycloak fungieren und die Verantwortung für Authentifizierung und Autorisierung übernehmen. Dadurch musst du nicht jedes einzelne Microservice mit Keycloak integrieren, sondern kannst dies zentral im API Gateway verwalten.

Es ist wichtig anzumerken, dass die Auswahl des passenden [Only registered and activated users can see links. Click Here To Register...] Gateways von deinen spezifischen Anforderungen und der technologischen Umgebung abhängt. Du solltest die Dokumentation und Beispiele dieser Gateways überprüfen, um zu sehen, welches am besten zu deinen Bedürfnissen passt.
09/09/2023 00:38 Happy Hardcore#3
In meinem Konzern nutzen wir für Gateways (zB. unser Mobile-Gateway) Spring Cloud Gateways.