Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

An Open Java Transaction Book

DZone's Guide to

An Open Java Transaction Book

· Java Zone
Free Resource

Just released, a free O’Reilly book on Reactive Microsystems: The Evolution of Microservices at Scale. Brought to you in partnership with Lightbend.

We live in a world of both commercial and open-source software, each one having strengths and weaknesses. But when it comes to books, there hasn’t been any noticeable revolution towards embracing new writing methodologies. The current book market shares the same philosophy with commercial software business model. There is a fee for obtaining a book copy, evolution is rather slow and usually there is a single person carrying all the weight of writing. It’s worth noticing that this model offers only the author’s point of view on a particular subject.

Yet, there is nothing wrong with the classic book writing process, but that doesn’t mean it has to be the only way of conceiving a book.

Why not embracing the open-source philosophy for writing books too? There are advantages for such an endeavor:

  • the writing effort could be split among multiple domain connoisseurs
  • there is no dead-line pressure, meaning you can write as much as your spare time allows you to
  • we can constantly improve the book, in a similar way with software releases: 1.0.0, 1.1.0, 2.0.0
  • the book is available from day one, and it can constantly be reviewed and enhanced using the Agile methodologies

I am taking this idea very seriously and therefore I decided to write my first open book, entitled “Unfolding Java Transactions”. I will use GitHub to manage the writing version management.

The motivation for writing such book comes from my previous interactions with enterprise software development. In any such project, the transaction management was never viewed as a priority upon designing the system and that’s always been puzzling me. Data integrity is extremely important, and it should be treated with the same attention like data modelling, testing or automatic deployment. Transaction management is not an easy subject and it makes sense to congregate all the Java Transaction knowledge in a single free book. I welcome any person willing to contribute to this project, since “two heads are better than one”.

If you enjoy reading this article, you might want to subscribe to my newsletter and get a discount for my book as well.

Vlad Mihalcea's Newsletter

If you enjoyed this article, I bet you are going to love my book as well.






This is what I will write about:

  • The chemistry of ACID
  • Concurrency control
    • 2PL
    • MVCC
  • Logical vs Physical Transactions
  • Why do ORMs always need Transactions?
  • Local Transactions
    • JDBC
    • JMS
    • Spring local transactions
    • Hibernate local transactions
  • Global Transactions
    • X/Open XA Protocol
    • 2PC and 1PC
    • JTA
    • Spring JTA transactions
    • Hibernate JTA support
    • File transactions with XADisk
    • Bitronix
  • Batch processing transaction management
    • Spanning an XA Transaction over JMS, DB and the File System
  • Transactional Memory
    • Multiverse STM

If you are interested in any of those subjects you can follow my progress on my blog, on twitter or on the book GitHub repository.

Strategies and techniques for building scalable and resilient microservices to refactor a monolithic application step-by-step, a free O'Reilly book. Brought to you in partnership with Lightbend.

Topics:
java ,open source ,book

Published at DZone with permission of Vlad Mihalcea. See the original article here.

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}