Posts Tagged ‘Distributed Systems’

Avoiding Distributed Transactions

Last week I presented on “Building Distributed Applications That Don’t Suck” twice at the ADUG conferences in Melbourne and Canberra. As the name may suggest, it’s a heavily opinionated session about the common mistakes people make when building distributed systems, and some techniques you can use to avoid the mistakes.

One of the great things about opinionated sessions is that they spark arguments, and I have thoroughly enjoyed the discussions that started during the breaks between sessions and that have continued on in email since then. One of those discussions has been around distributed transactions, and my advice to actively look for opportunities to avoid them. In the session I discussed how, where the business rules allowed, you could use things like Idempotency and even ordering of inserts to avoid the cost of a distributed transaction. However, it was the topic of Eventual Consistency that caused the most angst.

Read On…