The distributed nature of the microservices architecture may cause hard requirements on the resource
utilization spanning multiple services. Holding locks on multiple resources for prolonged periods in
a traditional ACID transaction might be in this case very inconvenient. For this reason, compensating
transactions allow reducing the full requirement of ACID transactions to allow resources (services) to
commit their changes immediately and to handle the possible transaction failure later by calling
a resource-defined recovery callback called compensation. In this session, we will present a MicroProfile
specification called Long Running Actions (LRA) which defines the transactional protocol and a simple API
for the distributed transactions in the Java microservices environment based on the saga pattern together
with the live coded demo.
Objective of the presentation:
To introduce the MP LRA for the general use of compensating transactions in cloud-native Java microservices.
Attendee pre-requisites - If none, enter "N/A":
Basic knowledge of Java, REST, HTTP.