2PC*: a distributed transaction concurrency control protocol of multi-microservice based on cloud computing platform

Pan Fan, Jing Liu, Wei Yin, Hui Wang, Xiaohong Chen, Haiying Sun

Research output: Contribution to journalArticlepeer-review

10 Scopus citations

Abstract

The two-phase commit (2PC) protocol is a key technique for achieving distributed transactions in storage systems such as relational databases and distributed databases. 2PC is a strongly consistent and centralized atomic commit protocol that ensures the serialization of the transaction execution order. However, it does not scale well to large and high-throughput systems, especially for applications with many transactional conflicts, such as microservices and cloud computing. Therefore, 2PC has a performance bottleneck for distributed transaction control across multiple microservices. In this paper, we propose 2PC*, a novel concurrency control protocol for distributed transactions that outperforms 2PC, allowing greater concurrency across multiple microservices. 2PC* can greatly reduce overhead because locks are held throughout the transaction process. Moreover, we improve the fault-tolerance mechanism of 2PC* using transaction compensation. We also implement a middleware solution for transactions in microservice support using 2PC*. We compare 2PC* to 2PC by applying both to Ctrip MSECP, and 2PC* outperforms 2PC in workloads with varying degrees of contention. When the contention becomes high, the experimental results show that 2PC* achieves at most a 3.3x improvement in throughput and a 67% reduction in latency, which proves that our scheme can easily support distributed transactions with multi-microservice modules. Finally, we embed our middleware scheme in the PaaS cloud platform and demonstrate its strong applicability to cloud computing through long-term analysis of the monitoring results in the cloud platform.

Original languageEnglish
Article number40
JournalJournal of Cloud Computing
Volume9
Issue number1
DOIs
StatePublished - 1 Dec 2020

Keywords

  • 2PC
  • Cloud computing
  • Distributed transactions
  • Microservices
  • PaaS platform
  • Protocol optimization

Fingerprint

Dive into the research topics of '2PC*: a distributed transaction concurrency control protocol of multi-microservice based on cloud computing platform'. Together they form a unique fingerprint.

Cite this