views:

234

answers:

2

I'm developing a mission-critical solution where data integrity is paramount and performance a close second. If data gets stuffed up, it's gonna be cata$trophic.

So, I'm looking for the C/C++ version of JTA (Java Transaction API). Does anyone know of any C or C++ libraries that supports distributed transactions? And yes, I've googled it ... unsuccessfully.

I'd hate to be told that there isn't one and I'd need to implement the protocol specified by Distributed TP: The XA Specification.

Please help!


Edit (responding to kervin): If I need to insert records across multiple database servers and I need to commit them atomically, products like Oracle will have solutions for it. If I've written my own message queue server and I want to commit messages to multiple servers atomically, I'll need something like JTA to make sure that I don't stuff up the atomicity of the transaction.

+2  A: 

Encina, DCE-RPC, TUXEDO, possibly CORBA (though I hesitate to suggest using CORBA), MTS (again, hmm).

These are the kind of things you want for distributed transaction processing.

Encina used to have a lot of good documentation for its DCE-based system.

gbjbaanb
I'd prefer a solution that does not need a transaction manager. JTA doesn't seem to require a transaction manager.Encina looks experimental to me.And yes, I'm trying to solve a distributed transaction processing problem, so DCE-RPC and CORBA doesn't help.
magius
A: 

There are hundreds. Seriously.

As far as general areas go. Check out Service Oriented Architecture, most of the new products are coming out in that area. Eg. RogueWave HydraSCA

I would start with plain Rogue Wave Suite, then see if I needed an Enterprise Service Bus after looking at that design.

That probably depends a lot on your design requirements and budget.

kervin