2012-07-26 10 views
8

Gibt es eine Möglichkeit, Transaktionen zwischen verschiedenen SOA-Diensten zu verbreiten, die von verschiedenen Plattformen wie .NET oder Java stammen?Transaktion in SOA

Ich weiß, dass die Transaktion zwischen WCF-Diensten, die von .NET kommt, ein- und ausgehen kann. Aber ich bin nicht vertraut mit Java-Plattform.

Jetzt arbeite ich in einem Projekt, das die Dienste von verschiedenen Plattformen kommuniziert.

Wie kann ich die Konsistenz im Geschäft aufrechterhalten?

+0

Danke Jungs für die Bearbeitung dieser Frage. –

+1

Alles, was ich finden konnte, war das: http://www.jnbridge.com/jnbpro.htm – Tomer

Antwort

1

Wenn Ihre Client- und Server-SOA-Infrastruktur (und damit die zugrunde liegenden Back-End-Systeme, auf die in den verschiedenen Service-Implementierungen zugegriffen wird) WS-Transaction unterstützt, würde dies die Transaktionsausbreitung ermöglichen.

Ich arbeite jedoch in einer riesigen SOA-Middleware-Umgebung für Finanzdienstleistungen und wir entscheiden uns, Transaktionen selbst zu verwalten: mit manueller Kompensation. Obwohl es komplexer ist, ohne auf einen verteilten Transaktionskoordinator angewiesen zu sein, gibt es uns doch Flexibilität und Leistungssteigerung.

+0

In meiner persönlichen Meinung, mit Compensation Codierung manuell. Manchmal ist es nicht ausreichend zuverlässig für Konsistenz. Aber tatsächlich entwerfen wir auf diese Weise. danke –

1

Transactions between services are bad for your SOA, da sie eine Menge Kopplung zwischen Diensten einführen. Dienstgrenze ist eine Vertrauensgrenze. Sie sind besser dran Sagas und Kompensationen mit Daniel

+0

Großartig. Danke. Ich brauche Zeit, um es zu lesen. Es ist ein Abfall, der für mein Verständnis schwer ist. –