JAX | 11. - 15. Mai 2020 Mainz

Microservices richtig entkoppeln? Dazu brauchen wir die Isolation von Workflow – am besten im Command Bus!

Session
Bis 19. Dezember: ✓ Gratis Agile Day ✓ Raspberry Pi oder C64 Mini for Free ✓ Bis zu 784 € sparen Jetzt anmelden
Infos
Dienstag, 5. November 2019
16:45 - 17:45
Raum:
Partenkirchen

Bei der Vorstellung der explosionsartigen Ausbreitung von immer mehr Microservices im Unternehmen wird vielen Architekten angst und bange: Wie sollen die Komplexität und ziemlich bald auch das Chaos beherrscht werden?

Wir besprechen, wie sich Workflowlogik, also fachliche Abläufe innerhalb einer Abteilung oder abteilungsübergreifend, in der Vergangenheit in Backend-Systemen und in Middleware versteckt hat. Das führte zu – oft nicht richtig verstandenen – Problemen: "Das ESB Team ist schuld." Wir diskutieren, wie genau dieses unbewusste "Einbacken" von Workflowwissen in Microservices die Komplexität gefährlich erhöht – und wie es verhindert werden kann.

Heute wird dazu oft wieder Workflowautomatisierung – als Orchestrierung –  aus der Schmuddelecke gezogen, doch die autonome Intelligenz von Minibausteinen verträgt sich nicht gut mit langlaufenden visuellen Prozessen und Modellen, die selbst viel Logik enthalten. 

Als Ausweg betrachten wir eine Art von Choreographie, die Workflowlogik radikal aufs nötigste reduziert: das Muster eines Command Bus. Er ist klein. Er erhält ein Ereignis wie "Antrag erstellt" und entscheidet für genau dieses Ereignis, was als nächstes geschehen soll. Das wars. Kein State, keine komplexen Workflowgraphen. "IF THIS THAN THAT" fürs Enterprise. 

Der Command Bus lässt gut durch Miniprozesse in Camunda, micro-deployt in Docker-Containern realisieren.

Alle News der Java-Welt:
Alle News der Java-Welt:

Behind the Tracks

Agile & Culture
Teamwork & Methoden

Data Access & Machine Learning
Speicherung, Processing & mehr

Clouds, Kubernets & Serverless
Alles rund um Cloud

Core Java & JVM Languages
Ausblicke & Best Practices

DevOps & Continuous Delivery
Deployment, Docker & mehr

Microservices
Strukturen & Frameworks

Web Development & JavaScript
JS & Webtechnologien

Performance & Security
Sichere Webanwendungen

Serverside Java
Spring, JDK & mehr

Digital Transformation & Innovation
Technologien & Vorgehensweisen

Software-Architektur
Best Practices