Ich stehe gerade vor einer Entscheidung bei einem Projekt und bin mir unsicher, wie ich vorgehen soll. Wir haben eine interne Anwendung, die mit mehreren externen Diensten kommunizieren muss, und ich schwanke zwischen der direkten Integration jeder einzelnen API und dem Einsatz eines API-Gateways. Die Idee, einen zentralen Punkt für das Routing und die Transformation aller Anfragen zu haben, klingt verlockend, aber ich frage mich, ob das für unseren eher überschaubaren Umfang nicht Overkill ist. Vielleicht mache ich mir auch zu viele Gedanken über die spätere Wartung. Hat jemand ähnliche Zweifel gehabt, als er vor dieser Wahl stand?
Der Reiz eines zentralen Gateways ist klar, aber bei einem überschaubaren System fühlt sich das an wie eine unnötige Schrankwand vor dem Fenster der API Architektur. Ich spüre Sorge vor zu viel Verschachtelung und einem Inflexibilitätsgefühl beim nächsten Change.
Aus technischer Sicht reduziert ein API Gateway Wiederholungen, sorgt für konsistente Authorisierung und Transformation, aber es fügt eine weitere Potenz von Fehlerszenarien hinzu und macht Deployments schwerer zu timen.
Ich glaube das Gateway würde irgendwann eigenständig Entscheidungen treffen, dabei ging es doch nur um Routing Regeln und Transformationen in der API Landschaft, vielleicht missverstehe ich das.
Ich bleibe skeptisch, das API Gateway könnte zum Flaschenhals werden wenn der Traffic wächst oder sich neue Anforderungen melden, dann kämpft man sich durch Konfigs statt den eigentlichen Problemen.
Vielleicht hilft es die Frage neu zu stellen was ist wichtiger bei der API Umsetzung schnelle erste Lösung oder langfristige Wartbarkeit?
Vielleicht ist Orchestrierung das Wort für Wachstum, aber heute reicht eine einfache Anbindung im API Stil.