1

I am trying to have WebAPI 2.2 self hosted on Linux enviroment which can be done with Mono, the catch is i am using transaction scope for distributed transactions, so is it (DTC) supported on non windows platforms? also if not is there any workaround or alternative to implement 2pc without DTC?

1 Answers1

0

MSDTC is supported on windows only. An alternative to 2PC is to implement a message queue transaction. With this approach, you split the transaction apart and have one for the act of de-queuing the message and one for persisting to durable storage such as a relational database or a NoSQL solution (whatever that may be for your system). With this approach you must factor in message idempotency.

More about this approach here:

https://lostechies.com/jimmybogard/2013/05/09/ditching-two-phased-commits/

And you have options regarding what message queuing technology you want to use such as RabbitMQ or ZeroMQ.

William Xifaras
  • 5,212
  • 2
  • 19
  • 21