Methoden zur Integration von Microservices
Direkter Draht
Microservice-Architekturen zerlegen Softwaresysteme in Subdienste mit abgrenzbarem Funktionsumfang und klaren Schnittstellen nach außen. Allerdings müssen die Services auch untereinander kommunizieren. Die Wahl der individuellen Methode hängt vom Anwendungsfall ab.
Microservice-Architekturen sind komplexe verteilte Systeme und unterliegen den üblichen Herausforderungen verteilter Datenverarbeitung: begrenzter Datendurchsatz im Netzwerk, erhöhte Latenzzeiten, Ausfälle des Netzwerks und Änderungen der Netzwerktopologie. In der Regel arbeiten die Dienste einer Microservice-Architektur dabei in eigenen separaten Prozessen über Servergrenzen hinweg und sind lediglich lose über das Netzwerk gekoppelt.
Grundsätzlich gilt: Je weniger die einzelnen Microservices miteinander kommunizieren, desto besser. Ein geeigneter Zuschnitt in fachlich abgrenzbare Umfänge (Bounded Contexts) nach der Domain-driven-Design-Methode mit minimierter Kommunikation zwischen den Services ist entscheidend für eine erfolgreiche und effiziente Architektur. Gänzlich ohne interne Kommunikation kommen die einzelnen Dienste allerdings nicht aus. Um übergeordnete Anwendungsfälle abzudecken, müssen die für Teilaufgaben zuständigen Microservices miteinander verknüpft werden.