分布式事务
本地事务
同一个数据库连接
分布式事务
原子性(业务):一个包含多个操作的业务功能,不能缺少任何一个操作。
一致性(数据):业务功能操作执行前数据是正确的,业务执行后数据仍然是正确的。
CAP标准
Consistency:加锁
Availability:快
Partitioning:网络分区
BASE标准
解决方案
XA协议(数据库支持)
1 各数据库都尝试执行SQL语句
2 告诉协调者执行结果成功还是失败
3 协调者汇总各个节点执行结果,都成功则通知各节点提交,否则通知各节点回滚
TCC(Try confirm cancel)
业务层
本地消息表
MQ事务消息
RocketMQ
RabbitMQ