分布式事务概览
一、强一致性解决方案
1、二阶段提交协议:第一阶段准备,第二阶段提交
2、三阶段提交协议:第一阶段预备,第二阶段准备,第三阶段提交。同时引入了超时机制,如果超时默认提交成功。可能会出现数据的不一致性。
二、最终一致性解决方案(可能会需要手工介入)
【分布式事务概览】1、TCC模式:try、confirm、cancel(基于RPC)
在 TCC 模式中,主业务服务负责发起流程,而从业务服务提供 TCC 模式的 Try、Confirm、Cancel 三个操作。其中,还有一个事务管理器的角色负责控制事务的一致性。
2、 补偿模式:定时任务重试(一张任务执行表,状态、重试次数等字段)
每次更新时修复(适合于一些统计数类)
定时校对(采取周期性校验保证数据一致性,从服务执行检验)
3、可靠事件模式:通过消息队列来保证一致性。通过“正反向消息”保存数据的一致性。(通过消息队列实现的有返回值的方法调用)
推荐阅读
- 深入浅出谈一下有关分布式消息技术(Kafka)
- mysql中视图事务索引与权限管理
- KubeDL HostNetwork(加速分布式训练通信效率)
- spring事务管理_01:事务管理框架+声明式事务
- 2018-03-11|2018-03-11 存储过程
- MySQL|MySQL 5.7参考手册_11.1 数据类型概览
- 实操Redission|实操Redission 分布式服务
- 分布式|《Python3网络爬虫开发实战(第二版)》内容介绍
- SpringBoot解决Shiro导致依赖注入的bean事务失效问题
- 2021年行业社群孵化的分布式商业趋势