Skip to main navigation Skip to search Skip to main content

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
  • *Corresponding author for this work
  • East China Normal University
  • Shanghai Avionics co. Ltd

Research output: Contribution to journalArticlepeer-review

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