Adding new types of resource to Bitronix

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Adding new types of resource to Bitronix

Andrew Frolov
Hi!
We are using Bitronix for half a year now. And I think this is the best open source project I've ever seen :) Thank you!

Now, to the point.. We are making a game, and I would be great to extend the borders of our transactions to runtime objects, not just databases. As I understand, Bitronix can use several types of resources in a transaction. JDBC connection, JMS connection and Ehcache. I want to add my own types of resource, say "player" or "guild". Is it possible? Did someone make it work? Is there any success stories?

Thanks!
Reply | Threaded
Open this post in threaded view
|

Re: Adding new types of resource to Bitronix

Ludovic Orban-2
Hi and sorry for the long delay coming back to you.

Well, XA was designed for connection oriented coarse-grained objects like database connections. It was very challenging to integrate with Ehcache as this seriously stretched the standard.

While it isn't impossible to implement diverse XA resources like you suggest, this would certainly be very challenging, would require a very intimate knowledge of the JTA and XA standards and I'm not even sure the end result would be worth the effort as multiplying the amount of XAResource per transaction tends to slow down the two-phase commit protocol.

I believe it would be much better to stick to the classic idom of leaving the XA stuff down to the lower layer like storage (JDBC) or transport (JMS) and building your fine-grained objects on top of those building blocks. It's a very classic answer reiterating a super common design but this really is the best way to do what you want, ie: atomicity of changes between your datasources.

--
Ludovic


On Fri, Aug 24, 2012 at 11:06 AM, Randll <[hidden email]> wrote:

Hi!
We are using Bitronix for half a year now. And I think this is the best open
source project I've ever seen :) Thank you!

Now, to the point.. We are making a game, and I would be great to extend the
borders of our transactions to runtime objects, not just databases. As I
understand, Bitronix can use several types of resources in a transaction.
JDBC connection, JMS connection and Ehcache. I want to add my own types of
resource, say "player" or "guild". Is it possible? Did someone make it work?
Is there any success stories?

Thanks!
--
View this message in context: http://old.nabble.com/Adding-new-types-of-resource-to-Bitronix-tp34343266p34343266.html
Sent from the Bitronix Transaction Manager mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email