分布式事务

[TOC]

什么是分布式事务

在分布式系统中实现的事务

分布式事务常用方案

2PC(二阶段提交)

准备、提交

3PC(三阶段提交)

准备、预提交、提交

TCC

资源预留、提交/回滚

TCC要求每个分支事务实现:预处理Try、确认Comfirm、撤销Cancel

本地消息表

需要注意定期拉取时间间隔,过短会给服务数据带来巨大压力,过长则会造成较大延时。

消息事务

如果使用的是Kafka,选择至多消费一次则可能会丢消息(取出消息就ACK),选择至少消费一次则可能会重复消费(消费逻辑执行完毕再应答ACK)。

最大努力通知

参考

面试必问:分布式事务六种解决方案

分布式事务的四种解决方案

最后更新于

这有帮助吗?