Zum Inhalt springen
  • Von: DOAG online
  • JavaLand.tv Java
  • 19.03.2019

Aufgezeichnet: Hexagonale Architektur in Microservices

Auf der JavaLand 2019 zeigte Christian Iwanzik in seinem Talk den grundsätzlichen Aufbau und die Philosophie hinter der hexagonalen Architektur und führt in einem Beispiel von einer problembehafteten, verflechteten 3-tier Architektur in mehreren Schritten zu einem hexagonalen Modell.


Microservices sind mittlerweile in fast jedem Projekt "state of the art". In der Vergangenheit wurde dabei der Blick vor allem auf das Zusammenspiel der einzelnen Services gelegt und ausgearbeitet, wie man am besten vertikale Fachschnitte zieht und horizontale Skalierung umsetzt. Dabei wird aber meist die interne Struktur ebendieser Services stark vernachlässigt. In der Praxis sieht man oft eine klassische 3-tier-Architektur mit Controllern, Services und Persistenz, die zwar am Anfang einen schnellen Einstieg gewährleistet, aber nach und nach zu immer mehr Verflechtungen führt. Fachlichkeit wird über alle Schichten verteilt und eigentlich zusammenhängende Aspekte werden auf vertikale Blöcke aufgeteilt.

Hier helfen uns die Mechanismen des Domain Driven Design und darauf aufbauend die hexagonale Architektur. Die Fachdomäne, als Herzstück der Software, wird nicht nur kommunikativ, sondern auch technisch in das Zentrum gerückt. Aus einer "Top-down"-Sicht, wird somit eine "Core–periphery"-Sicht. Modellumwandlungen und technische Anbindungen ziehen in weiter außen liegende "Application-" und "Port"-Schichten.