Das System
Ich habe eine API auf EC2-Computern unter AWS bereitgestellt. Eingehende HTTPS-Anforderungen werden an einen Elastic Load Balancer weitergeleitet . Der Load Balancer verarbeitet das SSL und leitet die Anforderung an einen Nginx-Server weiter, der die Anforderungen gemäß der Anforderungs-URL an die jeweiligen Server weiterleitet.
Der Schmerz
Nginx-Maschinen erfordern einen hohen Wartungsaufwand, insbesondere wenn die IP-Adressen der Server geändert werden. Darüber hinaus scheint URL-basiertes Proxy-Routing eine natürliche Fortsetzung eines Lastenausgleichs zu sein. Eine vernünftige webbasierte oder API-basierte Oberfläche zur Steuerung des URL-Routings wäre ein enormer Segen.
Die Frage
Gibt es eine cloudbasierte Routing-Lösung, die HTTP-Anforderungen anhand von URL-Schemata als Proxy bereitstellen kann und meinen Nginx-Computer ersetzt?
Antworten:
Sie können AWS API Gateway ( Dokumentation ) verwenden.
API Gateway unterstützt jetzt die HTTP-Proxy-Integration für Passthrough-Ressourcen, sodass Sie Ihre Nutzdaten und Abfrageparameter nicht explizit beschreiben müssen (was zuvor erforderlich war).
quelle
Schauen Sie sich Kong an .
Neben Open Source können Sie es auch über die interne RESTful-API betreiben und mit benutzerdefinierten Plugins erweitern .
quelle
Nur um die Antwort von @ EdwardSamuel zu ergänzen:
Ja, das gibt es, und der richtige AWS-Dienst dafür ist Application Load Balancer .
Allerdings bin ich wirklich gespannt , ob @ EdwardSamuel Antwort wirklich funktioniert , weil ich auch im Umgang mit API - Gateway für diesen Zweck interessiert bin. Ich bin mir einiger Einschränkungen bei API Gateway bewusst (Beschränkung der Inhaltslänge usw.), bin mir jedoch noch nicht sicher, ob diese Einschränkungen es unbrauchbar machen, beispielsweise einen WordPress-Blog einem Reverse-Proxy zu unterziehen.
quelle