malai.kuangren
malai.kuangren

Reputation: 359

Transaction in SOA

Is there any possibility to propagate transactions between different SOA services which are from different platforms like .NET or Java?

I know the transaction can flow in and out between WCF services which is coming from .NET. But I am not familiar with Java platform.

Now I am working in a project which communicates the services from different platform.

How can I maintain consistency in business?

Upvotes: 8

Views: 856

Answers (3)

Daniel P. Bullington
Daniel P. Bullington

Reputation: 643

If your client and server SOA infrastructure (and by extension, the underlying back-end systems being accessed in the various service implementations) support WS-Transaction, then this would allow for transaction propagation.

However, I work in a huge financial services SOA middleware environment and we choose to manage transactions ourselves: using manual compensation. While more complex, not relying on any distributed transaction coordinator does give us flexibility and performance increases.

Upvotes: 1

Guy Pardon
Guy Pardon

Reputation: 494

Try this pattern: http://www.atomikos.com/Publications/TryCancelConfirm

It is related to the saga and compensation approaches and combines the best of all worlds.

Best

Upvotes: 0

Arnon Rotem-Gal-Oz
Arnon Rotem-Gal-Oz

Reputation: 25909

Transactions between services are bad for your SOA as they introduce a lot of coupling between services. Service boundary is a trust boundary. You are better off using Sagas and compensations as Daniel noted

Upvotes: 1

Related Questions