We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Hexagonale Architektur in Microservices

Formale Metadaten

Titel
Hexagonale Architektur in Microservices
Untertitel
Domain zentrierte Microservices
Serientitel
Anzahl der Teile
94
Autor
Lizenz
CC-Namensnennung 4.0 International:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
Die hexagonale Architektur ist eine Alternative zur weit verbreiteten 3-tier Architektur basierend aus Controllern, Services und Repositories. Anders als auf Schichten, wird hier das Augenmerk auf Hüllen gelegt, wobei die fachliche Domäne das Zentrum der Architektur bildet. Dieser Vortrag zeigt zunächst die konzeptionellen Eigenschaften der hexagonalen Architektur und ihre Vor- und Nachteile. Im Anschluss wird an einem Beispiel gezeigt, wie man eine klassische 3-tier Architektur in eine hexagonale Architektur überführt und dabei fachliche Themen zentriert. Wir alle kennen die typische Backendarchitektur bestehend aus Controllern, Services und Repositories. Gewachsen aus der klassischen 3-tier Architektur, wird sie auch heute noch sehr oft in Microservices eingesetzt. Aus der technischen Trennung ergeben sich allerdings in wachsenden Komponenten zusehends Probleme. Oft werden fachliche Themen mit technischen Implikationen vermischt, da nicht klar ist, wo Fachlogik eigentlich verortet werden soll. Im Controller finden sich Datenvalidatoren, im Service Berechnungen und im Repository oder gar direkt in der Datenbank fachliche Vor- und Nachbedingungen. Fachliche Einzelteile werden dann über Komponenten hinweg orchestriert und erhält oft ein dichtes Netz an Abhängigkeiten zwischen den Schichten. Eine Antwort auf die Frage „Was tut meine Software eigentlich?“ wird dadurch immer weiter erschwert und auch die Wart- und Testbarkeit leidet stark darunter. Eine Alternative bildet hier die hexagonale Architektur. Anders als die Top-Down Architekturen, baut sie auf eine Hüllenarchitektur auf, in deren Mitte die fachliche Domäne beheimatet ist. Nur hier werden fachliche Themen behandelt, Vor- und Nachbedingung geprüft und Daten auf Plausibilität geprüft. Als Nebeneffekt erhält man dabei eine zentrale Stelle der „Wahrheit, dieim Code liegt“. Von innen nach außen wird die Domäne von der Applikationsschicht und die Portschicht eingehüllt. Während sich die Applikationsschicht um die Umwandlung technischer Objekte in fachliche und der Orchestrierung zusammenhängender Domainobjekte widmet, bildet die Portschicht die Verbindung in die Außenwelt. Dabei ist unerheblich ob Daten per HTTP in das System gelangen oder per (O/J)DBC in eine Datenbank gestreamt werden.