Konsistente Daten bei verteilten Systemen – Eine Entscheidungshilfe

Verteilte Transaktionen sind ein No-go, das haben die Softwarearchitekten im Laufe der letzten Jahre erkannt. Aktuelle Persistenzxysteme bieten verteilte Transaktionen schon gar nicht mehr an. Obwohl dieses Problem nicht neu ist, werden in den Softwareprojekten immer wieder dieselben Fragen zur Einhaltung der Datenkonsistenz gestellt. Doch was kann man als Softwarearchitekt für den jeweiligen Anwendungsfall vorschlagen, um die Konsistenz der Daten über mehrere Datentöpfe hinweg zueinander konsistent zu halten? Nach der Einführung zu ACID vs. BASE und Eventual Consistency werden verschiedene Strategien vorgestellt: Best Efforts 1 PC, Transactional Outbox oder Change Data Capture bis hin zu Single Source of Truth and Saga. Anhand verschiedener Use Cases soll die Auswahl der passenden Konsistenzstrategie erleichtert werden. Dabei werden die Vor- und Nachteile des jeweiligen Ansatzes genauer beleuchtet, um schließlich die richtige Auswahl zu erleichtern.

W-JAX:
Konsistente Daten bei verteilten Systemen – Eine Entscheidungshilfe

Aktualisiert: