Verteilte Transaktion
Eine Transaktion, die sich über mehrere Datenbanken oder Services erstreckt. Klassische Lösung: 2PC (Two-Phase Commit) über das XA-Protokoll. Notorisch komplex: Fällt der Koordinator aus, bleiben Transaktionen hängen, und die Performance leidet unter den vielen Roundtrips.
Einsatzgebiet: eine Banküberweisung zwischen zwei Banken, eine Bestellabwicklung über Bestell-DB und Lager-DB hinweg. Moderne Microservices vermeiden verteilte Transaktionen — sie setzen stattdessen auf das Saga-Pattern (kompensierende Aktionen) oder Event Sourcing. XA-Koordinatoren: Atomikos, Narayana (JBoss), MS DTC. PostgreSQL unterstützt XA über Java/JTA. Spanner und CockroachDB machen verteilte Transaktionen intern über Paxos/Raft transparent. CAP-Theorem-Kompromiss: starke Konsistenz über mehrere Knoten hinweg bedeutet schlechtere Verfügbarkeit bei Partitionen.