当前位置: X-MOL 学术J. Cloud Comp. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
2PC*: a distributed transaction concurrency control protocol of multi-microservice based on cloud computing platform
Journal of Cloud Computing ( IF 3.7 ) Pub Date : 2020-07-23 , DOI: 10.1186/s13677-020-00183-w
Pan Fan , Jing Liu , Wei Yin , Hui Wang , Xiaohong Chen , Haiying Sun

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.

中文翻译:

2PC *:基于云计算平台的多微服务分布式事务并发控制协议

两阶段提交(2PC)协议是用于在诸如关系数据库和分布式数据库之类的存储系统中实现分布式事务的关键技术。2PC是一个高度一致且集中的原子提交协议,可确保事务执行顺序的序列化。但是,它不适用于大型高吞吐量系统,尤其是对于具有许多事务冲突的应用程序,例如微服务和云计算。因此,2PC具有跨多个微服务的分布式事务控制的性能瓶颈。在本文中,我们提出了2PC *,这是一种新型的分布式事务并发控制协议,其性能优于2PC,从而允许跨多个微服务实现更大的并发。2PC *可以大大减少开销,因为在整个事务处理过程中都持有锁。此外,我们使用事务补偿改进了2PC *的容错机制。我们还使用2PC *为微服务支持中的事务实现了中间件解决方案。通过将两者应用于携程MSECP,我们将2PC *与2PC进行了比较,并且在争用程度不同的工作负载中2PC *的性能均优于2PC。当竞争加剧时,实验结果表明2PC *最多可将吞吐量提高3.3倍,并将延迟降低67%,这证明我们的方案可以轻松地支持具有多微服务模块的分布式事务。最后,
更新日期:2020-07-23
down
wechat
bug