Durch den Trend zu Microservice-Architekturen und die Bereitstellung von Public APIs ist die Verbreitung HTTP-basierter APIs noch weiter angestiegen. Doch in der Praxis ist zu beobachten, dass bei der Umsetzung von APIs und ihrer Clients wohlbekannte Fehler und Anti-Patterns wiederholt zum Einsatz kommen. So entstehen eng gekoppelte, zerbrechliche und wenig widerstandsfähige Lösungen, deren Wartung und Weiterentwicklung deutlich aufwendiger wird, als erhofft. Dieser Vortrag beleuchtet typische Fallen und zeigt alternative Lösungswege auf.
Zielpublikum: Architekten, Entwickler, Projektleiter
Voraussetzungen: Vorkenntnisse in Systemintegration und HTTP-basierten Schnittstellen vorteilhaft
Schwierigkeitsgrad: Fortgeschritten
Extended Abstract
Viele Unternehmen haben leider zu wenig aus den Fehlern der Vergangenheit gelernt. Weiterhin entstehen Integrationslösungen mit sehr enger Kopplung, bei denen selbst kleinste Änderungen der API eine Änderung der Clients notwendig macht (und dies selbst bei Änderungen, die eigentlich rückwärtskompatibel sein müssten). Zudem weist die Architektur der Kommunikationspartner oftmals keine ausreichende Widerstandsfähigkeit auf. Einige Gründe für diese Probleme sind Code-Generatoren, Data Binding Frameworks und diverse Tools oder Entwickler-Plattformen wie Swagger / SwaggerHub. Diese Angebote werden gerne wahrgenommen, weil sie einen vermeintlichen Geschwindigkeitsvorteil versprechen. Tatsächlich ergeben sich mittelfristig oft Nachteile und Schwierigkeiten durch deren Einsatz. Andere Gründe sind blockierende Kommunikation und zu wenig durchdachte Ansätze für den Umgang mit Fehlern. Ziel des Vortrags ist es, ein Bewusstsein für die Thematik zu schaffen, auf die Wichtigkeit guten API-Designs einerseits sowie widerstandsfähiger Architektur andererseits hinzuweisen und Konzepte wie beispielsweise „Tolerant Reader" bekannter zu machen.