© Stmool/Shutterstock.com
API-Gateway oder doch nur Service-Mesh-Werkzeug?

It depends ...


Große Softwaresysteme existieren in der Regel nicht allein und haben normalerweise viele Schnittstellenpartner. Die Anzahl der Partnersysteme kann dabei ganz schnell im zweistelligen Bereich liegen. Je kleiner die Services geschnitten werden, was derzeit in den Projekten tendenziell passiert, desto höher wird naturgemäß die Anzahl der Partnersysteme, die aufgerufen werden müssen. Es etabliert sich somit ein umfangreiches Kommunikationsnetz: ein sogenanntes Service Mesh.

Dem Thema Schnittstelle kommt heute noch mehr Bedeutung zu als in der Vergangenheit, denn die Fehler aus früheren Zeiten will und darf man heute nicht noch einmal machen. Direktzugriffe in die Datenbank eines anderen Service sind heute zum Glück nicht mehr auf der Liste der Projektverantwortlichen oder der Softwarearchitekten. Stattdessen entstehen mehr und mehr Schnittstellen als APIs nach dem REST Maturity Model von Richardson [1]. Gleichzeitig steigt der Wunsch nach einem koordinierten, kontrollierten und verwalteten Zugriff auf die Schnittstellen. Was in Anbetracht der steigenden Anzahl von Schnittstellen auch nicht sehr verwunderlich ist.

Die Überlegung, in einer ersten Reaktion ein API-Gateway zur Verwaltung dieser Schnittstellen zu verwenden, ist vollkommen verständlich. Doch bei genauerem Hinsehen stellt sich oft die Frage, welche Funktionen des API-Gateways genutzt werden sollen. Oft sind die Anforderungen an die Verwaltung und den Betrieb der APIs geringer als der Funktionsumfang, den API-Gateways bieten. Auf der anderen Seite sollte man zur Verwaltung des Service Mesh über den Einsatz eines geeigneten Werkzeugs nachdenken. Ab einer bestimmten Größe des Service Mesh oder einer gewissen Komplexität des Kommunikationsverhaltens der Services führt kein Weg mehr daran vorbei. Istio wäre hier ein Vertreter der Service-Mesh-Werkzeuge, die sich auf den Betrieb auf einer Cloudplattform spezialisiert haben.

Der Trend zur Betriebsführung der Services in der Cloud wurde auch von den API-Gateway-Herstellern aufgegriffen. Sie verändern gerade ihre Systeme weg von monolithischen Gateways hin zu sogenannten Micro-Gateways, die mehr dem Cloudgedanken entsprechen.

Somit stellt sich im Grunde die Frage, ob man die Anforderungen an den Betrieb und die Verwaltung der Schnittstellen mit einem mehr oder weniger klassischen API-Gateway erfüllen will oder ob man besser gleich auf ein Service-Mesh-Werkzeug wechseln sollte. Oder ist der Mix der beiden Werkzeuge der bessere Lösungsansatz?

API Conference ...

Exklusives Abo-Special

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang