CAP:
C: consistence,指多个数据库数据要随时一致
A: avalibility, 指application要随时可用
P: partition 指各个application要随时在线
BASE:
Basically availible 基本可用。 soft state 软状态,允许短时间数据不一致。 eventually consitenncy ,最终一致性。
牺牲了部分的consistency(客观会存在网络延迟),达到AP。
2pc(强一致性):
two-phase commit;
优点: 简单
缺点: 网络延迟导致数据不一致
3pc:
引入了超时机制。
协调者和参与者都可自动撤销或者提交
XA事物(强一致性): 属于2pc提交
组件: TM;RM;AP
性质:是2pc的一种规范,2pc是一种思想
TCC 最终一致性
编写三个方法的代码来保证。 try confirm cancel;
优点: 同步阻塞: 引入超时补偿机制,不会锁定整个资源,颗粒度更小
消息TCC:
可以异步。 通过mq做纽带
saga(最终一致性)
seata 框架,是实现
组件: TC TM RM TC是桥梁
