Path-Sensitive Atomic Commit
Local Coordination Avoidance for Distributed Transactions
The Art, Science, and Engineering of Programming , Volume 5 - Issue 1 p. 3
Inquiry: In highly available, high-throughput systems, such as large banking infrastructure, however,2plbecomes a bottleneck when objects are highly contended, when an object is queuing a lot of messages becauseof locking.
Knowledge: This allows thepsaclock mechanism to check whether the effect of two incoming messages atthe same time are independent, and to avoid locking if this is the case. As a result, more messages are directlyaccepted or rejected, and higher overall throughput is obtained.
Grounding: We have implementedpsacfor a state machine-based DSL called Rebel, on top of a runtimebased on the Akka actor framework. Our performance evaluation shows thatpsacexhibits the same scalabilityand latency characteristics as standard2pl/2pc, and obtains up to 1.8 times median higher throughput incongested scenarios.
Importance: We believepsacis a step towards enabling organizations to build scalable distributed applica-tions, even if their consistency requirements are not embarrassingly parallel
|The Art, Science, and Engineering of Programming|
|Organisation||Software Analysis and Transformation|
Soethout, T.M, van der Storm, T, & Vinju, J.J. (2020). Path-Sensitive Atomic Commit. The Art, Science, and Engineering of Programming (Vol. 5). doi:10.22152/programming-journal.org/2021/5/3